Bearing on a great circle

Time bar (total: 50.5s)

start0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated; 0ms collecting garbage

analyze2.5s (5%)

Memory
37.7MiB live, 892.6MiB allocated; 302ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
7.8%7.8%92%0.2%0%0%0%9
7.8%7.8%92%0.2%0%0%0%10
10.2%10.1%89.7%0.2%0%0%0%11
10.2%10.1%89.7%0.2%0%0%0%12
Compiler

Compiled 26 to 19 computations (26.9% saved)

sample11.5s (22.8%)

Memory
-25.1MiB live, 5 970.1MiB allocated; 2.5s collecting garbage
Samples
10.3s5 917×1valid
579.0ms2 339×0valid
Precisions
Click to see histograms. Total time spent on operations: 9.9s
ival-sin: 4.7s (47.5% of total)
ival-cos: 3.3s (33.4% of total)
ival-mult: 889.0ms (9% of total)
adjust: 594.0ms (6% of total)
ival-sub: 260.0ms (2.6% of total)
ival-atan2: 149.0ms (1.5% of total)
ival-true: 6.0ms (0.1% of total)
ival-assert: 4.0ms (0% of total)
Bogosity

explain579.0ms (1.1%)

Memory
22.1MiB live, 579.5MiB allocated; 85ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
64131(-7.451820290982066e-50 -2.066579007611596e+201 3.855944996237637e-92 3.405084232927869e+116)0-(sin.f64 (-.f64 lambda1 lambda2))
64131(-7.451820290982066e-50 -2.066579007611596e+201 3.855944996237637e-92 3.405084232927869e+116)0-(cos.f64 (-.f64 lambda1 lambda2))
00-0-(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
00-0-(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
00-0-lambda2
00-0-phi2
00-0-(*.f64 (sin.f64 phi1) (cos.f64 phi2))
00-0-(-.f64 lambda1 lambda2)
00-0-(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
00-0-(sin.f64 phi1)
00-0-(cos.f64 phi2)
00-0-lambda1
00-0-phi1
00-0-(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
00-0-(sin.f64 phi2)
00-0-(*.f64 (cos.f64 phi1) (sin.f64 phi2))
00-0-(cos.f64 phi1)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
cos.f64(cos.f64 (-.f64 lambda1 lambda2))sensitivity1950
sin.f64(sin.f64 (-.f64 lambda1 lambda2))sensitivity1950
Confusion
Predicted +Predicted -
+550
-14061
Precision
0.28205128205128205
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+5500
-140061
Precision?
0.28205128205128205
Recall?
1.0
Freqs
test
numberfreq
061
2195
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
415.0ms386×1valid
30.0ms126×0valid
Compiler

Compiled 208 to 55 computations (73.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 405.0ms
ival-sin: 160.0ms (39.5% of total)
ival-cos: 109.0ms (26.9% of total)
adjust: 83.0ms (20.5% of total)
ival-mult: 22.0ms (5.4% of total)
ival-sub: 20.0ms (4.9% of total)
ival-atan2: 9.0ms (2.2% of total)
ival-true: 1.0ms (0.2% of total)
ival-assert: 0.0ms (0% of total)

preprocess52.0ms (0.1%)

Memory
-4.0MiB live, 40.0MiB allocated; 12ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0109352
1262350
2560350
31312350
42889350
56308350
02224
03124
03124
Stop Event
saturated
saturated
iter limit
node limit
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 24 to 17 computations (29.2% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 24 to 17 computations (29.2% saved)

simplify4.0ms (0%)

Memory
4.7MiB live, 4.7MiB allocated; 0ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02290
03190
03190
Stop Event
saturated
saturated
iter limit
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))

localize272.0ms (0.5%)

Memory
-25.5MiB live, 201.3MiB allocated; 111ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.15234375
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda1 lambda2))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
Samples
246.0ms193×1valid
11.0ms63×0valid
Compiler

Compiled 92 to 19 computations (79.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 239.0ms
ival-sin: 148.0ms (61.9% of total)
ival-cos: 54.0ms (22.6% of total)
adjust: 13.0ms (5.4% of total)
ival-mult: 11.0ms (4.6% of total)
ival-atan2: 7.0ms (2.9% of total)
ival-sub: 5.0ms (2.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series43.0ms (0.1%)

Memory
-14.9MiB live, 31.2MiB allocated; 3ms collecting garbage
Counts
6 → 67
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
Outputs
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
Calls

12 calls:

TimeVariablePointExpression
23.0ms
phi1
@-inf
((atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))
3.0ms
lambda2
@-inf
((atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))
2.0ms
lambda1
@-inf
((atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))
2.0ms
lambda1
@inf
((atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))
2.0ms
phi2
@inf
((atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))

simplify290.0ms (0.6%)

Memory
37.1MiB live, 82.7MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03881744
110771669
239501646
081341600
199471540
2150521534
3188931534
4200411534
5201821534
6201891534
Stop Event
saturated
node limit
Counts
67 → 40
Calls
Call 1
Inputs
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
Outputs
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 phi1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda2 lambda1) (neg.f64 lambda1) lambda1))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 phi1)) (sin.f64 lambda1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))

rewrite669.0ms (1.3%)

Memory
-7.1MiB live, 131.0MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02252
13152
24152
34952
45352
55552
65752
05752
112852
276552
0820852
1887952
21156552
31586552
41967952
52163252
62244152
72263552
82266752
92266952
Stop Event
saturated
node limit
saturated
Counts
6 → 98
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (/.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (*.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (+.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (*.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (+.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))))
(/.f64 (neg.f64 (*.f64 (+.f64 lambda2 lambda1) (neg.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (neg.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (+.f64 lambda2 lambda1) (neg.f64 (-.f64 lambda1 lambda2)))) (+.f64 lambda2 lambda1))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 (neg.f64 lambda2) lambda2) lambda2)))) (neg.f64 (neg.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 (neg.f64 lambda2) lambda2) lambda2)))) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))
(/.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (*.f64 (+.f64 lambda2 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (+.f64 lambda2 lambda1) (+.f64 lambda2 lambda1)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(/.f64 (*.f64 (+.f64 lambda2 lambda1) (neg.f64 (-.f64 lambda1 lambda2))) (neg.f64 (+.f64 lambda2 lambda1)))
(/.f64 (neg.f64 (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 (neg.f64 lambda2) lambda2) lambda2))) (neg.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (neg.f64 (neg.f64 (+.f64 lambda2 lambda1))))
(/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1))
(/.f64 (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 (neg.f64 lambda2) lambda2) lambda2)) (neg.f64 (neg.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))))
(/.f64 (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 (neg.f64 lambda2) lambda2) lambda2)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))
(neg.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(-.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(-.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))
(-.f64 lambda1 lambda2)
(+.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 (neg.f64 lambda2) lambda2) (+.f64 lambda2 lambda1)))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))) (neg.f64 (cos.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (cos.f64 (-.f64 lambda2 lambda1)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda1))) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda1))) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (/.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (cos.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda1))) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(neg.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (sin.f64 phi1)))
(fma.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(fma.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))))
(fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (sin.f64 phi1)))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))

eval35.0ms (0.1%)

Memory
-24.0MiB live, 21.7MiB allocated; 4ms collecting garbage
Compiler

Compiled 6 063 to 722 computations (88.1% saved)

prune26.0ms (0.1%)

Memory
27.6MiB live, 27.6MiB allocated; 0ms collecting garbage
Pruning

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New12625151
Fresh000
Picked101
Done000
Total12725152
Accuracy
90.5%
Counts
152 → 25
Alt Table
Click to see full alt table
StatusAccuracyProgram
90.3%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
75.2%
(atan2.f64 (*.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
77.4%
(atan2.f64 (*.f64 (-.f64 (/.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.1%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
81.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
81.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (/.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (cos.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 (+.f64 lambda2 lambda1)))))))
67.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
73.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
63.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
70.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
68.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
48.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
70.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
66.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
43.6%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
52.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.1%
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
55.0%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
64.8%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
57.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 1 826 to 1 186 computations (35% saved)

simplify201.0ms (0.4%)

Memory
-14.0MiB live, 38.5MiB allocated; 6ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 lambda1)
cost-diff0
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
cost-diff0
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
cost-diff0
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
cost-diff0
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
cost-diff0
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
cost-diff0
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
cost-diff0
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
cost-diff0
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
cost-diff0
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
cost-diff0
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
052601
064601
176601
290601
3105601
4114601
5146601
6251601
7915601
85845601
08030601
Stop Event
saturated
node limit
iter limit
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda2)
(cos.f64 lambda1)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
phi2
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 phi2)
(cos.f64 (-.f64 lambda1 lambda2))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))
(sin.f64 lambda2)
(cos.f64 lambda2)
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(neg.f64 (cos.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda2)
(cos.f64 lambda1)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
phi2
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 phi2)
(cos.f64 (-.f64 lambda1 lambda2))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))
(sin.f64 lambda2)
(cos.f64 lambda2)
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(neg.f64 (cos.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)

localize548.0ms (1.1%)

Memory
21.1MiB live, 344.3MiB allocated; 20ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.14453125
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
accuracy0.2066675413890958
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda1 lambda2))
accuracy0.15234375
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy33.86834015744911
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda1 lambda2))
accuracy13.660536077400813
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
accuracy35.188407273541145
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda1 lambda2))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy24.830510414354375
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
accuracy0.14453125
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
accuracy0.15234375
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda1 lambda2))
Samples
350.0ms193×1valid
22.0ms63×0valid
Compiler

Compiled 556 to 37 computations (93.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 315.0ms
ival-cos: 104.0ms (33% of total)
ival-sin: 103.0ms (32.7% of total)
ival-mult: 49.0ms (15.5% of total)
adjust: 33.0ms (10.5% of total)
ival-atan2: 14.0ms (4.4% of total)
ival-sub: 6.0ms (1.9% of total)
ival-neg: 3.0ms (1% of total)
ival-add: 3.0ms (1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series58.0ms (0.1%)

Memory
11.9MiB live, 61.6MiB allocated; 26ms collecting garbage
Counts
23 → 140
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(sin.f64 lambda1)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (sin lambda1) #s(hole binary64 lambda1))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (* (pow lambda1 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* 1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow lambda1 2) (sin lambda2))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1))))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* (cos lambda1) (sin lambda2)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* lambda2 (cos lambda1)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* 1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos lambda1))) (* 1/6 (cos lambda1))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* 1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (cos lambda1)) (* 1/5040 (* (pow lambda2 2) (cos lambda1)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (* (cos lambda2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (* 1/24 (* (cos lambda2) (sin lambda1))))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (+ (* 1/24 (* (cos lambda2) (sin lambda1))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda2) (sin lambda1))) (* 1/720 (* (cos lambda1) (sin lambda2)))))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
Calls

12 calls:

TimeVariablePointExpression
16.0ms
lambda1
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (sin lambda1) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin lambda2) (cos lambda1)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (neg (cos lambda1)) (sin lambda2)))
6.0ms
lambda1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (sin lambda1) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin lambda2) (cos lambda1)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (neg (cos lambda1)) (sin lambda2)))
5.0ms
lambda2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (sin lambda1) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin lambda2) (cos lambda1)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (neg (cos lambda1)) (sin lambda2)))
5.0ms
phi2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (sin lambda1) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin lambda2) (cos lambda1)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (neg (cos lambda1)) (sin lambda2)))
5.0ms
phi2
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (sin lambda1) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin lambda2) (cos lambda1)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (neg (cos lambda1)) (sin lambda2)))

simplify356.0ms (0.7%)

Memory
-19.7MiB live, 117.5MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
07444171
121623974
083173873
1104893774
2162473756
3198753756
4206773756
5207403756
6207433756
Stop Event
saturated
node limit
Counts
140 → 74
Calls
Call 1
Inputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (sin lambda1) #s(hole binary64 lambda1))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (* (pow lambda1 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* 1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow lambda1 2) (sin lambda2))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1))))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* (cos lambda1) (sin lambda2)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* lambda2 (cos lambda1)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* 1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos lambda1))) (* 1/6 (cos lambda1))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* 1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (cos lambda1)) (* 1/5040 (* (pow lambda2 2) (cos lambda1)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (* (cos lambda2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (* 1/24 (* (cos lambda2) (sin lambda1))))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (+ (* 1/24 (* (cos lambda2) (sin lambda1))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda2) (sin lambda1))) (* 1/720 (* (cos lambda1) (sin lambda2)))))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (sin lambda1) #s(hole binary64 lambda1))
#s(approx (sin lambda1) lambda1)
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (neg.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (* (pow lambda1 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* 1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow lambda1 2) (sin lambda2))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda2 lambda1) (neg.f64 lambda1) lambda1))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (sin lambda2) (cos lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* (cos lambda1) (sin lambda2)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (*.f64 (neg.f64 lambda2) (cos.f64 phi2)) (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 lambda2) (cos.f64 phi2)) (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (*.f64 (neg.f64 lambda2) (cos.f64 phi2)) (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 phi1)) (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* lambda2 (cos lambda1)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 lambda2)))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* 1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos lambda1))) (* 1/6 (cos lambda1))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* 1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (cos lambda1)) (* 1/5040 (* (pow lambda2 2) (cos lambda1)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2)))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (* (cos lambda2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (* 1/24 (* (cos lambda2) (sin lambda1))))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (+ (* 1/24 (* (cos lambda2) (sin lambda1))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda2) (sin lambda1))) (* 1/720 (* (cos lambda1) (sin lambda2)))))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))

rewrite726.0ms (1.4%)

Memory
32.9MiB live, 172.7MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
052303
164303
282303
397303
4104303
5110303
6115303
7117303
0117262
1261262
21755262
08792262
19566262
211882262
316124262
419931262
522180262
623194262
723568262
823654262
Stop Event
saturated
node limit
saturated
Counts
23 → 218
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(sin.f64 lambda1)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (/.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(/.f64 (neg.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2))) (neg.f64 (+.f64 lambda2 lambda1)))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (neg.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1))
(/.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (*.f64 (*.f64 lambda2 lambda2) lambda2)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))
(-.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))
(-.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (/.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (/.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(sin.f64 lambda1)
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cos.f64 (+.f64 lambda2 lambda1)))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2)))))
(cos.f64 (neg.f64 (+.f64 (neg.f64 lambda1) lambda2)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (+.f64 (neg.f64 lambda1) lambda2))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (cos.f64 lambda1)))
(*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2))
(*.f64 (neg.f64 (cos.f64 lambda1)) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (neg.f64 (neg.f64 (cos.f64 lambda1))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(neg.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))

eval51.0ms (0.1%)

Memory
-23.1MiB live, 74.4MiB allocated; 11ms collecting garbage
Compiler

Compiled 15 476 to 965 computations (93.8% saved)

prune71.0ms (0.1%)

Memory
20.7MiB live, 67.8MiB allocated; 1ms collecting garbage
Pruning

49 alts after pruning (49 fresh and 0 done)

PrunedKeptTotal
New33138369
Fresh91120
Picked505
Done000
Total34549394
Accuracy
99.8%
Counts
394 → 49
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
77.2%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
80.1%
(atan2.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
84.4%
(atan2.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
75.2%
(atan2.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
79.1%
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
99.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
82.6%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
74.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
77.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
57.0%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
79.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
82.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.9%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.1%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
81.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
67.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
70.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
68.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
48.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
70.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
43.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
35.9%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
32.8%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
43.3%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
30.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
39.3%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
52.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
81.1%
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
64.8%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
55.0%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
60.8%
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
57.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
52.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
46.5%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
50.5%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
49.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
35.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
57.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
47.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
Compiler

Compiled 4 218 to 2 502 computations (40.7% saved)

simplify155.0ms (0.3%)

Memory
-14.9MiB live, 31.8MiB allocated; 2ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
cost-diff0
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
cost-diff0
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
cost-diff0
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
cost-diff0
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
cost-diff0
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
cost-diff0
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
cost-diff0
(sin.f64 lambda1)
cost-diff0
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
cost-diff0
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
cost-diff0
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069692
081692
197692
2118692
3135692
4144692
5176692
6281692
7943692
85848692
08035692
Stop Event
saturated
node limit
iter limit
Calls
Call 1
Inputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(neg.f64 (cos.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
phi2
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda2 lambda1)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (- lambda1 lambda2) lambda1)
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))
(sin.f64 lambda1)
(cos.f64 lambda1)
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda2)
(cos.f64 lambda1)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (cos.f64 lambda2))
(sin.f64 phi1)
Outputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(neg.f64 (cos.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
phi2
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda2 lambda1)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (- lambda1 lambda2) lambda1)
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))
(sin.f64 lambda1)
(cos.f64 lambda1)
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda2)
(cos.f64 lambda1)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (cos.f64 lambda2))
(sin.f64 phi1)

localize599.0ms (1.2%)

Memory
1.7MiB live, 373.0MiB allocated; 42ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.14453125
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
accuracy0.15234375
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
accuracy0.1640625
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))
accuracy31.876157160231468
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
accuracy0.15234375
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy27.50459744398274
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
accuracy13.538639054128737
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
accuracy13.660536077400813
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
accuracy27.728645733763834
#s(approx (- lambda1 lambda2) lambda1)
accuracy35.188407273541145
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda2 lambda1))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy24.708926169722574
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
accuracy24.830510414354375
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
accuracy0.13671875
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
accuracy0.14453125
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
accuracy0.2066675413890958
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
Samples
497.0ms193×1valid
25.0ms63×0valid
Compiler

Compiled 590 to 47 computations (92% saved)

Precisions
Click to see histograms. Total time spent on operations: 464.0ms
adjust: 122.0ms (26.3% of total)
ival-cos: 107.0ms (23.1% of total)
ival-sin: 100.0ms (21.6% of total)
ival-mult: 62.0ms (13.4% of total)
ival-neg: 41.0ms (8.8% of total)
ival-atan2: 16.0ms (3.4% of total)
ival-sub: 9.0ms (1.9% of total)
ival-add: 5.0ms (1.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series78.0ms (0.2%)

Memory
19.0MiB live, 64.4MiB allocated; 4ms collecting garbage
Counts
29 → 188
Calls
Call 1
Inputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (-.f64 lambda2 lambda1))
#s(approx (- lambda1 lambda2) lambda1)
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
Outputs
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 lambda1))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (* (pow lambda1 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* 1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow lambda1 2) (sin lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos lambda2)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* -1/2 (* lambda1 (cos lambda2))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (- lambda2 lambda1))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (+ lambda2 (* -1 lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* lambda2 (cos lambda1)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* 1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos lambda1))) (* 1/6 (cos lambda1))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* 1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (cos lambda1)) (* 1/5040 (* (pow lambda2 2) (cos lambda1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg lambda1))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* -1 (* lambda2 (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* -1/2 (* lambda2 (cos (neg lambda1)))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos (neg lambda1))) (* 1/6 (* lambda2 (sin (neg lambda1)))))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* -1/2 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos phi2) (sin phi1)) (* (pow lambda2 2) (+ (* -1/2 (* (cos phi2) (sin phi1))) (* 1/24 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos phi2) (sin phi1)) (* (pow lambda2 2) (+ (* -1/2 (* (cos phi2) (sin phi1))) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))) (* 1/24 (* (cos phi2) (sin phi1))))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/120 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (sin phi2)))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* -1/2 (* (pow phi1 2) (sin phi2))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* 1/24 (* (pow phi1 2) (sin phi2))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin phi2))) (* 1/24 (sin phi2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (* (cos lambda2) (cos phi2)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos lambda2) (cos phi2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda2) (cos phi2))) (* 1/120 (* (pow phi1 2) (* (cos lambda2) (cos phi2))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda2) (cos phi2))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos lambda2) (cos phi2)))) (* 1/120 (* (cos lambda2) (cos phi2)))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (* (cos lambda2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (* 1/24 (* (cos lambda2) (sin lambda1))))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (+ (* 1/24 (* (cos lambda2) (sin lambda1))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda2) (sin lambda1))) (* 1/720 (* (cos lambda1) (sin lambda2)))))))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/24 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (cos phi1))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* -1/6 (* (pow phi2 2) (cos phi1)))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* 1/120 (* (pow phi2 2) (cos phi1)))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (cos phi1))) (* 1/120 (cos phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos lambda2) (sin phi1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos lambda2) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos lambda2) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))) (* 1/24 (* (cos lambda2) (sin phi1))))))))))
Calls

12 calls:

TimeVariablePointExpression
23.0ms
lambda2
@-inf
((atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (neg (cos lambda1)) (sin lambda2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (cos phi2) (cos lambda2)) (sin phi1)) (* (sin lambda2) (cos lambda1)))
7.0ms
lambda1
@0
((atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (neg (cos lambda1)) (sin lambda2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (cos phi2) (cos lambda2)) (sin phi1)) (* (sin lambda2) (cos lambda1)))
6.0ms
phi2
@inf
((atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (neg (cos lambda1)) (sin lambda2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (cos phi2) (cos lambda2)) (sin phi1)) (* (sin lambda2) (cos lambda1)))
5.0ms
phi2
@-inf
((atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (neg (cos lambda1)) (sin lambda2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (cos phi2) (cos lambda2)) (sin phi1)) (* (sin lambda2) (cos lambda1)))
5.0ms
lambda2
@inf
((atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (neg (cos lambda1)) (sin lambda2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (- lambda1 lambda2) (cos (- lambda1 lambda2)) (cos (- lambda1 lambda2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (* (cos phi2) (cos lambda2)) (sin phi1)) (* (sin lambda2) (cos lambda1)))

simplify393.0ms (0.8%)

Memory
2.2MiB live, 144.5MiB allocated; 12ms collecting garbage
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
010165830
130535486
270405468
081365361
1104905173
2154335171
3191725170
4205155170
5207415170
6207605170
Stop Event
saturated
node limit
Counts
188 → 93
Calls
Call 1
Inputs
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 lambda1))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (* (pow lambda1 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* 1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow lambda1 2) (sin lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos lambda2)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* -1/2 (* lambda1 (cos lambda2))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (- lambda2 lambda1))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (+ lambda2 (* -1 lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* lambda2 (cos lambda1)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* 1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos lambda1))) (* 1/6 (cos lambda1))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* 1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (cos lambda1)) (* 1/5040 (* (pow lambda2 2) (cos lambda1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg lambda1))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* -1 (* lambda2 (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* -1/2 (* lambda2 (cos (neg lambda1)))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos (neg lambda1))) (* 1/6 (* lambda2 (sin (neg lambda1)))))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* -1/2 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos phi2) (sin phi1)) (* (pow lambda2 2) (+ (* -1/2 (* (cos phi2) (sin phi1))) (* 1/24 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos phi2) (sin phi1)) (* (pow lambda2 2) (+ (* -1/2 (* (cos phi2) (sin phi1))) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))) (* 1/24 (* (cos phi2) (sin phi1))))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/120 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (sin phi2)))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* -1/2 (* (pow phi1 2) (sin phi2))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* 1/24 (* (pow phi1 2) (sin phi2))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin phi2))) (* 1/24 (sin phi2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (* (cos lambda2) (cos phi2)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos lambda2) (cos phi2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda2) (cos phi2))) (* 1/120 (* (pow phi1 2) (* (cos lambda2) (cos phi2))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda2) (cos phi2))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos lambda2) (cos phi2)))) (* 1/120 (* (cos lambda2) (cos phi2)))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (* (cos lambda2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (* 1/24 (* (cos lambda2) (sin lambda1))))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (+ (* 1/24 (* (cos lambda2) (sin lambda1))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda2) (sin lambda1))) (* 1/720 (* (cos lambda1) (sin lambda2)))))))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/24 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (cos phi1))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* -1/6 (* (pow phi2 2) (cos phi1)))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* 1/120 (* (pow phi2 2) (cos phi1)))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (cos phi1))) (* 1/120 (cos phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos lambda2) (sin phi1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos lambda2) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos lambda2) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))) (* 1/24 (* (cos lambda2) (sin phi1))))))))))
Outputs
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) #s(hole binary64 (atan2 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 lambda1))
#s(approx (sin lambda1) lambda1)
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (* (pow lambda1 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow lambda1 2) (+ (* 1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow lambda1 2) (sin lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos lambda2)))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* -1/2 (* lambda1 (cos lambda2))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (* (cos phi2) (sin lambda1))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* (cos lambda1) (sin lambda2)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (- lambda2 lambda1))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (sin lambda2) (cos lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (+ lambda2 (* -1 lambda1)))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* -1 (* lambda2 (cos lambda1)))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 lambda2)))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* 1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos lambda1))) (* 1/6 (cos lambda1))))))))
#s(approx (* (neg (cos lambda1)) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos lambda1)) (* (pow lambda2 2) (+ (* 1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/120 (cos lambda1)) (* 1/5040 (* (pow lambda2 2) (cos lambda1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg lambda1))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* -1 (* lambda2 (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* -1/2 (* lambda2 (cos (neg lambda1)))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos (neg lambda1))) (* 1/6 (* lambda2 (sin (neg lambda1)))))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* -1/2 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos phi2) (sin phi1)) (* (pow lambda2 2) (+ (* -1/2 (* (cos phi2) (sin phi1))) (* 1/24 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos phi2) (sin phi1)) (* (pow lambda2 2) (+ (* -1/2 (* (cos phi2) (sin phi1))) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (* (cos phi2) (sin phi1)))) (* 1/24 (* (cos phi2) (sin phi1))))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2)))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/120 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (sin phi2)))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* -1/2 (* (pow phi1 2) (sin phi2))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* 1/24 (* (pow phi1 2) (sin phi2))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin phi2))) (* 1/24 (sin phi2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (* (cos lambda2) (cos phi2)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (*.f64 phi1 (cos.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos lambda2) (cos phi2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda2) (cos phi2))) (* 1/120 (* (pow phi1 2) (* (cos lambda2) (cos phi2))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* phi1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda2) (cos phi2))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos lambda2) (cos phi2)))) (* 1/120 (* (cos lambda2) (cos phi2)))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (* (cos lambda2) (sin lambda1)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda2)))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (* 1/24 (* (cos lambda2) (sin lambda1))))))))))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) #s(hole binary64 (+ (* -1 (* (cos lambda1) (sin lambda2))) (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin lambda1))) (+ (* 1/2 (* (cos lambda1) (sin lambda2))) (* (pow phi2 2) (+ (* -1/24 (* (cos lambda1) (sin lambda2))) (+ (* 1/24 (* (cos lambda2) (sin lambda1))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda2) (sin lambda1))) (* 1/720 (* (cos lambda1) (sin lambda2)))))))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/24 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (cos phi1))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* -1/6 (* (pow phi2 2) (cos phi1)))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* 1/120 (* (pow phi2 2) (cos phi1)))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (cos phi1))) (* 1/120 (cos phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (* (cos lambda2) (sin phi1))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos lambda2) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))))))))
#s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) #s(hole binary64 (+ (* (cos lambda2) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos lambda2) (sin phi1)))) (* 1/24 (* (cos lambda2) (sin phi1))))))))))

rewrite844.0ms (1.7%)

Memory
3.2MiB live, 143.1MiB allocated; 12ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
069395
181395
2100395
3119395
4131395
5137395
6142395
7144395
0144382
1353342
22667342
08014342
18985342
211447342
315048342
418161342
520364342
621664342
722123342
822213342
922229342
Stop Event
saturated
node limit
saturated
Counts
29 → 258
Calls
Call 1
Inputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (-.f64 lambda2 lambda1))
#s(approx (- lambda1 lambda2) lambda1)
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (sin.f64 phi1))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(/.f64 (neg.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2))) (neg.f64 (+.f64 lambda2 lambda1)))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (neg.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1))
(/.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (*.f64 (*.f64 lambda2 lambda2) lambda2)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))
(-.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(-.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (sin.f64 phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(/.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1))))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))
(*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))
(neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 (+.f64 lambda2 lambda1)))
(/.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))) (neg.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 lambda2)) (cos.f64 lambda1)))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (neg.f64 (-.f64 lambda2 lambda1)))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
#s(approx (- lambda1 lambda2) lambda1)
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 phi2))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda2) (neg.f64 (neg.f64 (cos.f64 lambda1))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (neg.f64 (cos.f64 lambda1)) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(neg.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))

eval56.0ms (0.1%)

Memory
-3.3MiB live, 42.6MiB allocated; 4ms collecting garbage
Compiler

Compiled 14 088 to 1 118 computations (92.1% saved)

prune118.0ms (0.2%)

Memory
-14.3MiB live, 84.6MiB allocated; 9ms collecting garbage
Pruning

71 alts after pruning (68 fresh and 3 done)

PrunedKeptTotal
New26239301
Fresh152944
Picked235
Done000
Total27971350
Accuracy
99.9%
Counts
350 → 71
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
99.7%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
90.3%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))
90.3%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))))
99.7%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
77.2%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
75.3%
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
75.3%
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
75.2%
(atan2.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
79.1%
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%
(atan2.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
90.3%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
99.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
82.6%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
77.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
79.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
71.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
69.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
70.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
82.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.9%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.8%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
22.1%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
81.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
67.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
58.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
48.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
70.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
63.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
43.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
35.9%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
43.3%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
30.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
39.3%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
25.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
34.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
52.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
51.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
81.1%
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
77.3%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
51.8%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
39.3%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
64.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
60.8%
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
64.9%
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
54.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
61.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
45.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
35.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
57.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
49.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
35.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
57.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
50.6%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
49.4%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
52.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
53.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
56.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
50.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
41.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.4%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
41.4%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
99.7%
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
90.3%
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
Compiler

Compiled 6 137 to 3 792 computations (38.2% saved)

simplify4.0s (7.9%)

Memory
58.1MiB live, 104.9MiB allocated; 30ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
cost-diff0
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))
cost-diff0
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
cost-diff0
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
cost-diff0
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
cost-diff0
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
cost-diff0
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
cost-diff0
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
cost-diff0
(-.f64 lambda1 lambda2)
cost-diff0
(sin.f64 (-.f64 lambda1 lambda2))
cost-diff0
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
cost-diff0
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
cost-diff0
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
cost-diff0
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
cost-diff0
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
cost-diff0
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068727
080727
1101727
2127727
3149727
4162727
5218727
6386727
71236727
86331727
08044727
Stop Event
saturated
node limit
iter limit
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda2)
(cos.f64 lambda1)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
(sin.f64 phi2)
phi2
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(sin.f64 phi1)
phi1
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda2 lambda1)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda2 lambda1)
lambda1
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
phi2
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 phi1)
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(sin.f64 lambda2)
(sin.f64 lambda1)
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(cos.f64 lambda1)
(cos.f64 lambda2)
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda2 lambda1))
(+.f64 lambda2 lambda1)
lambda2
lambda1
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda2)
(cos.f64 lambda1)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
(sin.f64 phi2)
phi2
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(sin.f64 phi1)
phi1
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda2 lambda1)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
lambda2
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda2 lambda1)
lambda1
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
phi2
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 phi1)
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(sin.f64 lambda2)
(sin.f64 lambda1)
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(cos.f64 lambda1)
(cos.f64 lambda2)
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda2 lambda1))
(+.f64 lambda2 lambda1)
lambda2
lambda1
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(cos.f64 (-.f64 lambda1 lambda2))

localize5.4s (10.6%)

Memory
26.9MiB live, 535.9MiB allocated; 1.7s collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy3.2006689789738756
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda1 lambda2))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy13.986984485615915
(sin.f64 (+.f64 lambda2 lambda1))
accuracy0.203125
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy24.708926169722574
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
accuracy24.830510414354375
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
accuracy13.538639054128737
(cos.f64 (-.f64 lambda2 lambda1))
accuracy13.660536077400813
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
accuracy24.708926169722574
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
accuracy35.188407273541145
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
accuracy13.660536077400813
(sin.f64 (-.f64 lambda1 lambda2))
accuracy24.708926169722574
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
accuracy24.830510414354375
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
accuracy28.470911298123305
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
accuracy0.13671875
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
accuracy0.14453125
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
accuracy0.15234375
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
accuracy0.228847509768442
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
Samples
5.3s194×1valid
24.0ms62×0valid
Compiler

Compiled 604 to 44 computations (92.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 426.0ms
ival-cos: 163.0ms (38.3% of total)
ival-sin: 121.0ms (28.4% of total)
adjust: 44.0ms (10.3% of total)
ival-sub: 40.0ms (9.4% of total)
ival-mult: 37.0ms (8.7% of total)
ival-atan2: 13.0ms (3.1% of total)
ival-add: 4.0ms (0.9% of total)
ival-div: 2.0ms (0.5% of total)
ival-neg: 1.0ms (0.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series51.0ms (0.1%)

Memory
14.1MiB live, 60.4MiB allocated; 3ms collecting garbage
Counts
27 → 213
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (-.f64 lambda2 lambda1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (* (cos phi2) (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2)))))) (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* lambda1 (* (cos phi2) (+ (* -1/2 (* (cos lambda2) (sin (neg lambda2)))) (+ (* -1/2 (* (cos (neg lambda2)) (sin lambda2))) (+ (* -1/6 (* (cos lambda2) (sin (neg lambda2)))) (* -1/6 (* (cos (neg lambda2)) (sin lambda2)))))))) (* (cos phi2) (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2))))))) (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin lambda2) (sin (neg lambda2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2))))) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (sin (neg lambda2)))) (+ (* -1/2 (* (cos (neg lambda2)) (sin lambda2))) (+ (* -1/6 (* (cos lambda2) (sin (neg lambda2)))) (* -1/6 (* (cos (neg lambda2)) (sin lambda2))))))) (* (cos lambda2) (cos (neg lambda2)))))) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos lambda2)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* -1/2 (* lambda1 (cos lambda2))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))) (* -1 (sin lambda2)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (sin phi1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (sin lambda2) (sin phi1))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (sin phi1)))) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* -1/6 (* lambda1 (* (sin lambda2) (sin phi1)))))) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (cos lambda2)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (+ (cos lambda2) (* -1/2 (* lambda1 (sin lambda2))))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (+ (cos lambda2) (* lambda1 (+ (* -1/2 (sin lambda2)) (* -1/6 (* lambda1 (cos lambda2))))))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (- lambda2 lambda1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (+ lambda1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (- lambda2 (* -1 lambda1)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (- lambda2 (* -1 lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (+ lambda2 (* -1 lambda1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (- lambda2 (* -1 lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (pow (sin lambda1) 2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (* (cos phi2) (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2))))) (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* lambda2 (* (cos phi2) (+ (* -1/2 (* (cos lambda1) (sin lambda1))) (+ (* -1/6 (* (cos lambda1) (sin lambda1))) (+ (* 1/6 (* (cos lambda1) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda1)))))))) (* (cos phi2) (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2)))))) (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (pow (sin lambda1) 2)))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))) (pow (sin lambda1) 2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (+ (* lambda2 (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2)))) (* (cos lambda1) (sin lambda1))))) (pow (sin lambda1) 2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (+ (* lambda2 (+ (* -1 (pow (cos lambda1) 2)) (+ (* -1 (pow (sin lambda1) 2)) (* lambda2 (+ (* -1/2 (* (cos lambda1) (sin lambda1))) (+ (* -1/6 (* (cos lambda1) (sin lambda1))) (+ (* 1/6 (* (cos lambda1) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda1)))))))))) (* (cos lambda1) (sin lambda1))))) (pow (sin lambda1) 2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg lambda1))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* -1 (* lambda2 (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* -1/2 (* lambda2 (cos (neg lambda1)))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos (neg lambda1))) (* 1/6 (* lambda2 (sin (neg lambda1)))))) (sin (neg lambda1)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (sin phi1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (sin lambda1) (sin phi1))) (* (cos lambda1) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (sin phi1)))) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (sin phi1))) (* -1/6 (* lambda2 (* (sin lambda1) (sin phi1)))))) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (sin phi1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (cos lambda1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (cos lambda1) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (cos lambda1) (* lambda2 (+ (* -1/2 (sin lambda1)) (* -1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (+ lambda1 (* -1 lambda2))) (sin (- lambda1 (* -1 lambda2)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (+ lambda1 (* -1 lambda2))) (sin (- lambda1 (* -1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (- lambda1 (* -1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/120 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (sin phi2)))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* -1/2 (* (pow phi1 2) (sin phi2))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* 1/24 (* (pow phi1 2) (sin phi2))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin phi2))) (* 1/24 (sin phi2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi1 2) (+ (* -1/6 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/120 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi1 2) (+ (* -1/6 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/2 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))) (* 1/24 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/2 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))) (* 1/24 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/24 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (cos phi1))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* -1/6 (* (pow phi2 2) (cos phi1)))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* 1/120 (* (pow phi2 2) (cos phi1)))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (cos phi1))) (* 1/120 (cos phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
Calls

12 calls:

TimeVariablePointExpression
7.0ms
phi2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (sin lambda2) (cos lambda1)) (* (cos phi1) (sin phi2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (sin (+ lambda2 lambda1)) (cos (- lambda1 lambda2)))
5.0ms
phi2
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (sin lambda2) (cos lambda1)) (* (cos phi1) (sin phi2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (sin (+ lambda2 lambda1)) (cos (- lambda1 lambda2)))
4.0ms
lambda1
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (sin lambda2) (cos lambda1)) (* (cos phi1) (sin phi2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (sin (+ lambda2 lambda1)) (cos (- lambda1 lambda2)))
4.0ms
lambda1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (sin lambda2) (cos lambda1)) (* (cos phi1) (sin phi2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (sin (+ lambda2 lambda1)) (cos (- lambda1 lambda2)))
4.0ms
lambda2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (* (sin lambda1) (cos lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (sin (- lambda1 lambda2)) (- lambda1 lambda2) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (* (sin lambda2) (cos lambda1)) (* (cos phi1) (sin phi2)) (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda2 lambda1)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (sin (+ lambda2 lambda1)) (cos (- lambda1 lambda2)))

simplify4.2s (8.3%)

Memory
-1.2MiB live, 387.2MiB allocated; 152ms collecting garbage
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
011066895
133636348
081146227
1107375990
2160845978
3198445976
4214445976
5218905976
6219155976
Stop Event
saturated
node limit
Counts
213 → 118
Calls
Call 1
Inputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (* (cos phi2) (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2)))))) (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* lambda1 (* (cos phi2) (+ (* -1/2 (* (cos lambda2) (sin (neg lambda2)))) (+ (* -1/2 (* (cos (neg lambda2)) (sin lambda2))) (+ (* -1/6 (* (cos lambda2) (sin (neg lambda2)))) (* -1/6 (* (cos (neg lambda2)) (sin lambda2)))))))) (* (cos phi2) (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2))))))) (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin lambda2) (sin (neg lambda2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2))))) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (sin (neg lambda2)))) (+ (* -1/2 (* (cos (neg lambda2)) (sin lambda2))) (+ (* -1/6 (* (cos lambda2) (sin (neg lambda2)))) (* -1/6 (* (cos (neg lambda2)) (sin lambda2))))))) (* (cos lambda2) (cos (neg lambda2)))))) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos lambda2)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* -1/2 (* lambda1 (cos lambda2))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))) (* -1 (sin lambda2)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (sin phi1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (sin lambda2) (sin phi1))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (sin phi1)))) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* -1/6 (* lambda1 (* (sin lambda2) (sin phi1)))))) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (cos lambda2)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (+ (cos lambda2) (* -1/2 (* lambda1 (sin lambda2))))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (+ (cos lambda2) (* lambda1 (+ (* -1/2 (sin lambda2)) (* -1/6 (* lambda1 (cos lambda2))))))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (- lambda2 lambda1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (+ lambda1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (- lambda2 (* -1 lambda1)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (- lambda2 (* -1 lambda1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (+ lambda2 (* -1 lambda1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (- lambda2 (* -1 lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (pow (sin lambda1) 2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (* (cos phi2) (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2))))) (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* lambda2 (* (cos phi2) (+ (* -1/2 (* (cos lambda1) (sin lambda1))) (+ (* -1/6 (* (cos lambda1) (sin lambda1))) (+ (* 1/6 (* (cos lambda1) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda1)))))))) (* (cos phi2) (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2)))))) (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (pow (sin lambda1) 2)))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))) (pow (sin lambda1) 2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (+ (* lambda2 (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2)))) (* (cos lambda1) (sin lambda1))))) (pow (sin lambda1) 2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (+ (* lambda2 (+ (* -1 (pow (cos lambda1) 2)) (+ (* -1 (pow (sin lambda1) 2)) (* lambda2 (+ (* -1/2 (* (cos lambda1) (sin lambda1))) (+ (* -1/6 (* (cos lambda1) (sin lambda1))) (+ (* 1/6 (* (cos lambda1) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda1)))))))))) (* (cos lambda1) (sin lambda1))))) (pow (sin lambda1) 2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg lambda1))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* -1 (* lambda2 (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* -1/2 (* lambda2 (cos (neg lambda1)))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos (neg lambda1))) (* 1/6 (* lambda2 (sin (neg lambda1)))))) (sin (neg lambda1)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (sin phi1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (sin lambda1) (sin phi1))) (* (cos lambda1) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (sin phi1)))) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (sin phi1))) (* -1/6 (* lambda2 (* (sin lambda1) (sin phi1)))))) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (sin phi1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (cos lambda1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (cos lambda1) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (cos lambda1) (* lambda2 (+ (* -1/2 (sin lambda1)) (* -1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (+ lambda1 (* -1 lambda2))) (sin (- lambda1 (* -1 lambda2)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (+ lambda1 (* -1 lambda2))) (sin (- lambda1 (* -1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (- lambda1 (* -1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/120 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (sin phi2)))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* -1/2 (* (pow phi1 2) (sin phi2))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* 1/24 (* (pow phi1 2) (sin phi2))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin phi2))) (* 1/24 (sin phi2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi1 2) (+ (* -1/6 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/120 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi1 2) (+ (* -1/6 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/2 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))) (* 1/24 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/2 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))) (* 1/24 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/24 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (cos phi1))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* -1/6 (* (pow phi2 2) (cos phi1)))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* 1/120 (* (pow phi2 2) (cos phi1)))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (cos phi1))) (* 1/120 (cos phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (* (cos phi2) (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2)))))) (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2))) lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* lambda1 (* (cos phi2) (+ (* -1/2 (* (cos lambda2) (sin (neg lambda2)))) (+ (* -1/2 (* (cos (neg lambda2)) (sin lambda2))) (+ (* -1/6 (* (cos lambda2) (sin (neg lambda2)))) (* -1/6 (* (cos (neg lambda2)) (sin lambda2)))))))) (* (cos phi2) (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2))))))) (* (cos phi2) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))))) (* (cos phi2) (* (sin lambda2) (sin (neg lambda2)))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin lambda2) (sin (neg lambda2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2)))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) lambda1 (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (* (cos lambda2) (cos (neg lambda2))))) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2))) lambda1) lambda1 (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1 (* (sin lambda2) (sin (neg lambda2)))) (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (sin (neg lambda2)))) (+ (* -1/2 (* (cos (neg lambda2)) (sin lambda2))) (+ (* -1/6 (* (cos lambda2) (sin (neg lambda2)))) (* -1/6 (* (cos (neg lambda2)) (sin lambda2))))))) (* (cos lambda2) (cos (neg lambda2)))))) (+ (* (cos lambda2) (sin (neg lambda2))) (* (cos (neg lambda2)) (sin lambda2))))) (* (sin lambda2) (sin (neg lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (cos.f64 phi2)) lambda1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (sin.f64 lambda2)) lambda1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* -1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* lambda1 (+ (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))) (* 1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos lambda2)))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* -1/2 (* lambda1 (cos lambda2))) (* -1 (sin lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos lambda2) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))) (* -1 (sin lambda2)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda2) (sin phi1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (* (sin lambda2) (sin phi1))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (sin phi1)))) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (sin phi1))) (* -1/6 (* lambda1 (* (sin lambda2) (sin phi1)))))) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (sin phi1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin lambda2)))
#s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (cos lambda2)))))
#s(approx (sin (+ lambda2 lambda1)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 lambda2)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (+ (cos lambda2) (* -1/2 (* lambda1 (sin lambda2))))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda2) (* lambda1 (+ (cos lambda2) (* lambda1 (+ (* -1/2 (sin lambda2)) (* -1/6 (* lambda1 (cos lambda2))))))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 lambda1))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (* (sin lambda2) (cos lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (- lambda2 lambda1))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (+ lambda1 lambda2))))
#s(approx (sin (+ lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (- lambda2 (* -1 lambda1)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (- lambda2 (* -1 lambda1))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (+ lambda2 (* -1 lambda1)))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (- lambda2 (* -1 lambda1)))))
#s(approx (sin (+ lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (pow (sin lambda1) 2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (* (cos phi2) (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2))))) (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 phi2) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (neg.f64 (cos.f64 phi2)) lambda2))) lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* lambda2 (* (cos phi2) (+ (* -1/2 (* (cos lambda1) (sin lambda1))) (+ (* -1/6 (* (cos lambda1) (sin lambda1))) (+ (* 1/6 (* (cos lambda1) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda1)))))))) (* (cos phi2) (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2)))))) (* (cos phi2) (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))))) (* (cos phi2) (pow (sin lambda1) 2)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (pow (sin lambda1) 2)))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (* (cos lambda1) (sin lambda1)))) (pow (sin lambda1) 2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) lambda2 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1)) lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (+ (* lambda2 (+ (* -1 (pow (cos lambda1) 2)) (* -1 (pow (sin lambda1) 2)))) (* (cos lambda1) (sin lambda1))))) (pow (sin lambda1) 2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1) (fma.f64 (cos.f64 lambda1) (sin.f64 lambda1) (neg.f64 lambda2))) lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin lambda1))) (+ (* lambda2 (+ (* -1 (pow (cos lambda1) 2)) (+ (* -1 (pow (sin lambda1) 2)) (* lambda2 (+ (* -1/2 (* (cos lambda1) (sin lambda1))) (+ (* -1/6 (* (cos lambda1) (sin lambda1))) (+ (* 1/6 (* (cos lambda1) (sin lambda1))) (* 1/2 (* (cos lambda1) (sin lambda1)))))))))) (* (cos lambda1) (sin lambda1))))) (pow (sin lambda1) 2))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (sin lambda2) (cos lambda1)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (sin lambda2) (cos lambda1)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))) (* -1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg lambda1))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* -1 (* lambda2 (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* -1/2 (* lambda2 (cos (neg lambda1)))) (sin (neg lambda1)))))))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (+ (cos (neg lambda1)) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos (neg lambda1))) (* 1/6 (* lambda2 (sin (neg lambda1)))))) (sin (neg lambda1)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (cos lambda1) (sin phi1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (* (sin lambda1) (sin phi1))) (* (cos lambda1) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (sin phi1)))) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (sin phi1)))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (sin phi1))) (* -1/6 (* lambda2 (* (sin lambda1) (sin phi1)))))) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (sin phi1)))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda1))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (cos lambda1)))))
#s(approx (sin (+ lambda2 lambda1)) (fma.f64 (cos.f64 lambda1) lambda2 (sin.f64 lambda1)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (cos lambda1) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (cos lambda1) (* lambda2 (+ (* -1/2 (sin lambda1)) (* -1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2)))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (atan2 (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (* (sin (+ lambda1 (* -1 lambda2))) (sin (- lambda1 (* -1 lambda2)))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) #s(hole binary64 (* (sin (+ lambda1 (* -1 lambda2))) (sin (- lambda1 (* -1 lambda2))))))
#s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))
#s(approx (cos (- lambda2 lambda1)) #s(hole binary64 (cos (neg (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (sin (+ lambda2 lambda1)) #s(hole binary64 (sin (- lambda1 (* -1 lambda2)))))
#s(approx (sin (+ lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (cos (- lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/120 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (sin phi2)))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* -1/2 (* (pow phi1 2) (sin phi2))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* 1/24 (* (pow phi1 2) (sin phi2))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (+ (sin phi2) (* (pow phi1 2) (+ (* -1/2 (sin phi2)) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin phi2))) (* 1/24 (sin phi2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (cos (- lambda1 lambda2))))) (* 1/120 (* (cos phi2) (cos (- lambda1 lambda2))))))))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi1 2) (+ (* -1/6 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/120 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi1 2) (+ (* -1/6 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/120 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (/ (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (sin (+ lambda2 lambda1))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/2 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))) (* 1/24 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))))))))
#s(approx (* (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (cos phi2)) #s(hole binary64 (+ (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/2 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2))))) (* 1/24 (* (sin (+ lambda1 lambda2)) (sin (- lambda1 lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) #s(hole binary64 (+ (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* 1/24 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (cos phi1))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* -1/6 (* (pow phi2 2) (cos phi1)))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* 1/120 (* (pow phi2 2) (cos phi1)))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* phi2 (+ (cos phi1) (* (pow phi2 2) (+ (* -1/6 (cos phi1)) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (cos phi1))) (* 1/120 (cos phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos (- lambda1 lambda2)) (sin phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* 1/24 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* (cos (- lambda1 lambda2)) (sin phi1)) (* (pow phi2 2) (+ (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (cos (- lambda1 lambda2)) (sin phi1)))) (* 1/24 (* (cos (- lambda1 lambda2)) (sin phi1))))))))))

rewrite853.0ms (1.7%)

Memory
227.1MiB live, 333.9MiB allocated; 125ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068400
180400
299400
3113400
4123400
5133400
6137400
7141400
0141329
1341329
22290329
08144329
19009329
211135329
314533329
418076329
520319329
621455329
721829329
821848329
921851329
Stop Event
saturated
node limit
saturated
Counts
27 → 306
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (-.f64 lambda2 lambda1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
(*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))) (neg.f64 (neg.f64 (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1))))
(neg.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))))
(/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (neg.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))))
(/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda2 lambda1))) (-.f64 lambda2 lambda1))
(*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2))))
(/.f64 (neg.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2))) (neg.f64 (+.f64 lambda2 lambda1)))
(/.f64 (neg.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (neg.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(/.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (*.f64 (*.f64 lambda2 lambda2) lambda2)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))
(/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1))
(-.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))
(-.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)) (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
(*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))) (neg.f64 (neg.f64 (sin.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1))))
(/.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1))))
(neg.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))) (neg.f64 (sin.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 lambda2 lambda1)))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)))) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1))))))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (fabs.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (fabs.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (sin.f64 phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(/.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) (fma.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)) (cos.f64 lambda1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
(+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 (+.f64 lambda2 lambda1)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 lambda2)) (cos.f64 lambda1)))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))
(cos.f64 (neg.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2)))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 lambda2 lambda1)))))
(cos.f64 (neg.f64 (+.f64 (neg.f64 lambda1) lambda2)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (+.f64 (neg.f64 lambda1) lambda2))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (neg.f64 (-.f64 lambda2 lambda1)))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(/.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))))
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))))))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(fma.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (neg.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda2 lambda1)))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)))))
(/.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 lambda2)) (cos.f64 lambda1) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)))))
(/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
(fma.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2))))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2))))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))))
(fma.f64 (cos.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda2 lambda1))
(-.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (-.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (-.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (-.f64 lambda2 lambda1)))))
(-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda2)) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2))))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2))))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))))
(+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 (+.f64 lambda2 lambda1)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1)))) (neg.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 lambda2)) (cos.f64 lambda1)))))
(/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(-.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))
(cos.f64 (neg.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2)))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 lambda2 lambda1)))))
(cos.f64 (neg.f64 (+.f64 (neg.f64 lambda1) lambda2)))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (+.f64 (neg.f64 lambda1) lambda2))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (neg.f64 (-.f64 lambda2 lambda1)))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (cos.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (*.f64 (sin.f64 (/.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)))) (sin.f64 (/.f64 (*.f64 (*.f64 lambda2 lambda2) lambda2) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1)))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))) (/.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (neg.f64 (cos.f64 lambda1))) (cos.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))

eval3.8s (7.6%)

Memory
-278.5MiB live, 139.2MiB allocated; 84ms collecting garbage
Compiler

Compiled 22 905 to 1 803 computations (92.1% saved)

prune313.0ms (0.6%)

Memory
202.2MiB live, 362.6MiB allocated; 118ms collecting garbage
Pruning

89 alts after pruning (85 fresh and 4 done)

PrunedKeptTotal
New41743460
Fresh214263
Picked415
Done033
Total44289531
Accuracy
99.9%
Counts
531 → 89
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
99.7%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
77.2%
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
75.3%
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
87.2%
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
73.8%
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
78.0%
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
76.4%
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
69.4%
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
44.0%
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
47.3%
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
90.3%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
79.3%
(atan2.f64 (*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
99.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
82.6%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
57.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
77.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
79.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
71.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
69.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
83.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
70.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
82.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
82.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.9%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.8%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
22.1%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
68.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
81.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
58.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
48.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
43.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
35.9%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
43.3%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
30.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
39.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
34.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
30.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
34.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
38.6%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
52.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.1%
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
77.3%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
39.3%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
60.8%
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
64.9%
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
56.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
61.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
48.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
69.6%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
45.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
45.4%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
34.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
57.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
49.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
43.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))))))))
57.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))))
57.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
50.6%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
49.4%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
52.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
36.1%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
53.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
48.1%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
51.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
35.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
56.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
50.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
48.5%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
52.2%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
24.5%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
50.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
32.7%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
32.1%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
41.3%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.5%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
41.4%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
40.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
40.5%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
48.0%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
47.8%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
47.2%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
99.7%
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
Compiler

Compiled 10 679 to 3 092 computations (71% saved)

regimes307.0ms (0.6%)

Memory
-164.3MiB live, 319.6MiB allocated; 42ms collecting garbage
Counts
146 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (/.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (cos.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 (+.f64 lambda2 lambda1)))))))
(atan2.f64 (*.f64 (-.f64 (/.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (/.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (sin.f64 (+.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (cos.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi1)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))))))))
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1))))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi2)) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))))) (*.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (fma.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Calls

6 calls:

73.0ms
lambda1
60.0ms
lambda2
58.0ms
phi1
39.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.0ms
(-.f64 lambda1 lambda2)
Results
AccuracySegmentsBranch
99.7%1(-.f64 lambda1 lambda2)
99.7%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%1lambda1
99.7%1lambda2
99.7%1phi1
99.7%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes236.0ms (0.5%)

Memory
-58.7MiB live, 329.9MiB allocated; 21ms collecting garbage
Counts
127 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (/.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (/.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (sin.f64 (+.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (atan2 (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 lambda2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Calls

6 calls:

63.0ms
lambda2
41.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0ms
phi2
31.0ms
lambda1
31.0ms
(-.f64 lambda1 lambda2)
Results
AccuracySegmentsBranch
99.7%1(-.f64 lambda1 lambda2)
99.7%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%1lambda1
99.7%1lambda2
99.7%1phi1
99.7%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes435.0ms (0.9%)

Memory
-10.9MiB live, 314.2MiB allocated; 74ms collecting garbage
Counts
122 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
Calls

6 calls:

128.0ms
lambda1
122.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
66.0ms
(-.f64 lambda1 lambda2)
45.0ms
lambda2
37.0ms
phi1
Results
AccuracySegmentsBranch
99.7%1(-.f64 lambda1 lambda2)
99.7%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.7%1lambda1
99.7%1lambda2
99.7%1phi1
99.7%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes235.0ms (0.5%)

Memory
0.0MiB live, 189.1MiB allocated; 19ms collecting garbage
Counts
120 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1))) (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
Calls

6 calls:

52.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.0ms
(-.f64 lambda1 lambda2)
42.0ms
lambda2
33.0ms
phi1
29.0ms
phi2
Results
AccuracySegmentsBranch
90.3%1(-.f64 lambda1 lambda2)
90.3%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%1lambda1
90.3%1lambda2
90.3%1phi1
94.2%3phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes968.0ms (1.9%)

Memory
31.4MiB live, 120.3MiB allocated; 6ms collecting garbage
Counts
114 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 lambda2 lambda1))) (sin.f64 (+.f64 lambda2 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
Calls

4 calls:

880.0ms
phi1
29.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.0ms
lambda2
27.0ms
phi2
Results
AccuracySegmentsBranch
90.3%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.3%1lambda2
90.3%1phi1
90.3%1phi2
Compiler

Compiled 27 to 29 computations (-7.4% saved)

regimes243.0ms (0.5%)

Memory
-21.7MiB live, 169.6MiB allocated; 45ms collecting garbage
Counts
105 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
Calls

6 calls:

77.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
50.0ms
phi1
35.0ms
(-.f64 lambda1 lambda2)
26.0ms
phi2
25.0ms
lambda2
Results
AccuracySegmentsBranch
87.9%3phi2
84.4%2(-.f64 lambda1 lambda2)
90.4%3lambda1
82.6%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
90.5%3lambda2
87.6%2phi1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes94.0ms (0.2%)

Memory
-3.8MiB live, 92.2MiB allocated; 7ms collecting garbage
Counts
100 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 #s(approx (* (sin (+ lambda2 lambda1)) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda1))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 #s(approx (sin (+ lambda2 lambda1)) (sin.f64 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) (cos.f64 (+.f64 lambda2 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

3 calls:

39.0ms
lambda1
26.0ms
phi1
23.0ms
lambda2
Results
AccuracySegmentsBranch
89.0%3phi1
85.7%2lambda1
87.3%3lambda2
Compiler

Compiled 3 to 12 computations (-300% saved)

regimes27.0ms (0.1%)

Memory
34.2MiB live, 34.2MiB allocated; 0ms collecting garbage
Counts
95 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (sin lambda2) (cos lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

1 calls:

22.0ms
phi1
Results
AccuracySegmentsBranch
89.0%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes35.0ms (0.1%)

Memory
-13.8MiB live, 31.5MiB allocated; 3ms collecting garbage
Counts
90 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (* (cos phi2) (cos lambda2)) (sin phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
Calls

1 calls:

30.0ms
phi1
Results
AccuracySegmentsBranch
88.5%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes133.0ms (0.3%)

Memory
-15.2MiB live, 172.0MiB allocated; 13ms collecting garbage
Counts
84 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 #s(approx (sin lambda1) lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 lambda1 lambda2) lambda2 (neg.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 lambda1 lambda1) lambda1) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda2 lambda2) lambda2))) (*.f64 (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1)) (fma.f64 lambda2 (+.f64 lambda2 lambda1) (*.f64 lambda1 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
Calls

6 calls:

22.0ms
(-.f64 lambda1 lambda2)
21.0ms
phi1
21.0ms
lambda2
20.0ms
phi2
20.0ms
lambda1
Results
AccuracySegmentsBranch
81.1%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.1%1(-.f64 lambda1 lambda2)
81.1%1lambda1
81.1%1lambda2
81.1%1phi2
81.1%1phi1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes141.0ms (0.3%)

Memory
17.8MiB live, 108.8MiB allocated; 7ms collecting garbage
Counts
63 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(approx (* (sin phi1) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2)) lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
Calls

6 calls:

41.0ms
(-.f64 lambda1 lambda2)
36.0ms
phi2
15.0ms
lambda2
15.0ms
lambda1
15.0ms
phi1
Results
AccuracySegmentsBranch
73.3%1(-.f64 lambda1 lambda2)
73.3%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.1%3lambda2
78.1%3phi2
73.3%1phi1
81.3%3lambda1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes33.0ms (0.1%)

Memory
-14.0MiB live, 35.8MiB allocated; 8ms collecting garbage
Counts
53 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

2 calls:

17.0ms
lambda2
13.0ms
lambda1
Results
AccuracySegmentsBranch
75.2%3lambda2
80.6%3lambda1
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes69.0ms (0.1%)

Memory
3.1MiB live, 94.8MiB allocated; 6ms collecting garbage
Counts
52 → 2
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

5 calls:

15.0ms
(-.f64 lambda1 lambda2)
13.0ms
lambda1
13.0ms
phi1
12.0ms
phi2
12.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Results
AccuracySegmentsBranch
70.8%1phi1
70.8%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
70.8%1(-.f64 lambda1 lambda2)
72.6%2phi2
74.1%2lambda1
Compiler

Compiled 30 to 34 computations (-13.3% saved)

regimes28.0ms (0.1%)

Memory
43.2MiB live, 43.2MiB allocated; 0ms collecting garbage
Counts
51 → 2
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
Calls

2 calls:

13.0ms
lambda1
12.0ms
lambda2
Results
AccuracySegmentsBranch
72.7%2lambda2
70.8%1lambda1
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes29.0ms (0.1%)

Memory
-5.4MiB live, 39.7MiB allocated; 2ms collecting garbage
Counts
49 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 lambda1 lambda2) (neg.f64 lambda2) lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

2 calls:

12.0ms
lambda2
12.0ms
phi2
Results
AccuracySegmentsBranch
70.8%1phi2
70.8%1lambda2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes95.0ms (0.2%)

Memory
4.6MiB live, 57.3MiB allocated; 19ms collecting garbage
Counts
42 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (fma.f64 (/.f64 (neg.f64 lambda2) lambda1) lambda1 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

6 calls:

41.0ms
phi2
10.0ms
lambda2
10.0ms
lambda1
10.0ms
(-.f64 lambda1 lambda2)
10.0ms
phi1
Results
AccuracySegmentsBranch
69.6%1(-.f64 lambda1 lambda2)
69.6%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
69.6%1phi1
69.6%1lambda1
69.6%1lambda2
69.6%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes1.3s (2.5%)

Memory
-37.7MiB live, 55.0MiB allocated; 3ms collecting garbage
Counts
22 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

6 calls:

1.2s
phi2
7.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
6.0ms
lambda1
6.0ms
(-.f64 lambda1 lambda2)
6.0ms
lambda2
Results
AccuracySegmentsBranch
57.8%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
64.0%3lambda1
62.3%3lambda2
57.8%1phi1
57.8%1(-.f64 lambda1 lambda2)
63.1%3phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes11.0ms (0%)

Memory
17.7MiB live, 17.7MiB allocated; 0ms collecting garbage
Counts
18 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

2 calls:

5.0ms
lambda1
5.0ms
phi2
Results
AccuracySegmentsBranch
61.8%3phi2
62.9%3lambda1
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes30.0ms (0.1%)

Memory
-2.0MiB live, 42.0MiB allocated; 4ms collecting garbage
Counts
15 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 (fma.f64 (/.f64 (neg.f64 lambda1) lambda2) lambda2 lambda2))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (+.f64 lambda2 lambda1)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (*.f64 (/.f64 (*.f64 (+.f64 lambda2 lambda1) (-.f64 lambda1 lambda2)) (fma.f64 (*.f64 lambda1 lambda1) lambda1 (*.f64 (*.f64 lambda2 lambda2) lambda2))) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (-.f64 lambda1 lambda2)))))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

6 calls:

7.0ms
phi1
4.0ms
(-.f64 lambda1 lambda2)
4.0ms
lambda1
4.0ms
lambda2
4.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Results
AccuracySegmentsBranch
56.8%1(-.f64 lambda1 lambda2)
56.8%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
56.8%1phi1
56.8%1phi2
56.8%1lambda2
56.8%1lambda1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes18.0ms (0%)

Memory
-18.7MiB live, 31.4MiB allocated; 4ms collecting garbage
Counts
4 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

6 calls:

2.0ms
phi2
2.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
2.0ms
lambda1
2.0ms
(-.f64 lambda1 lambda2)
2.0ms
lambda2
Results
AccuracySegmentsBranch
57.0%3lambda1
52.2%1(-.f64 lambda1 lambda2)
52.2%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
52.2%1phi2
57.0%3lambda2
52.2%1phi1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes4.0ms (0%)

Memory
5.1MiB live, 5.1MiB allocated; 0ms collecting garbage
Counts
3 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
Calls

2 calls:

2.0ms
lambda2
2.0ms
lambda1
Results
AccuracySegmentsBranch
57.0%3lambda1
56.8%3lambda2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes4.0ms (0%)

Memory
11.1MiB live, 11.1MiB allocated; 0ms collecting garbage
Counts
2 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
Calls

3 calls:

1.0ms
phi1
1.0ms
lambda1
1.0ms
lambda2
Results
AccuracySegmentsBranch
52.2%1phi1
52.2%1lambda2
52.2%1lambda1
Compiler

Compiled 3 to 12 computations (-300% saved)

regimes7.0ms (0%)

Memory
14.1MiB live, 14.1MiB allocated; 0ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Calls

6 calls:

1.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
1.0ms
phi2
1.0ms
(-.f64 lambda1 lambda2)
1.0ms
lambda1
1.0ms
phi1
Results
AccuracySegmentsBranch
40.9%1(-.f64 lambda1 lambda2)
40.9%1lambda1
40.9%1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
40.9%1phi2
40.9%1lambda2
40.9%1phi1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

bsearch152.0ms (0.3%)

Memory
2.8MiB live, 94.8MiB allocated; 4ms collecting garbage
Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
Steps
TimeLeftRight
8.0ms
3.970279952950068e-10
2.7742239014422064e-8
138.0ms
-1.668815185412557e+23
-0.00010960436538441235
Samples
115.0ms145×1valid
7.0ms47×0valid
Compiler

Compiled 1 419 to 972 computations (31.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 114.0ms
ival-cos: 55.0ms (48.4% of total)
ival-sin: 33.0ms (29.1% of total)
adjust: 10.0ms (8.8% of total)
ival-mult: 8.0ms (7% of total)
ival-sub: 4.0ms (3.5% of total)
ival-atan2: 4.0ms (3.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch232.0ms (0.5%)

Memory
17.8MiB live, 158.6MiB allocated; 11ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
70.0ms
7.634393316896104e-10
0.016459441893958374
154.0ms
-2.209281787710003e-5
-2.4754334632749085e-14
Samples
177.0ms160×1valid
33.0ms128×0valid
Compiler

Compiled 1 665 to 1 140 computations (31.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 187.0ms
ival-mult: 75.0ms (40.1% of total)
ival-sin: 46.0ms (24.6% of total)
ival-cos: 46.0ms (24.6% of total)
adjust: 11.0ms (5.9% of total)
ival-atan2: 5.0ms (2.7% of total)
ival-sub: 4.0ms (2.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch207.0ms (0.4%)

Memory
3.0MiB live, 143.0MiB allocated; 11ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
80.0ms
3.038894348651209e-8
4.197817917116264e-6
119.0ms
-13212.989916795224
-0.003551684684267595
Samples
156.0ms184×1valid
10.0ms72×0valid
Compiler

Compiled 1 227 to 920 computations (25% saved)

Precisions
Click to see histograms. Total time spent on operations: 155.0ms
ival-cos: 65.0ms (41.9% of total)
ival-sin: 44.0ms (28.3% of total)
ival-atan2: 18.0ms (11.6% of total)
adjust: 13.0ms (8.4% of total)
ival-mult: 11.0ms (7.1% of total)
ival-sub: 4.0ms (2.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch246.0ms (0.5%)

Memory
4.7MiB live, 297.7MiB allocated; 138ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
77.0ms
3.038894348651209e-8
4.197817917116264e-6
163.0ms
-4729311.596728723
-13212.989916795224
Samples
176.0ms164×1valid
52.0ms60×0valid
Compiler

Compiled 1 182 to 879 computations (25.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 176.0ms
ival-sin: 89.0ms (50.5% of total)
ival-cos: 51.0ms (29% of total)
ival-mult: 17.0ms (9.7% of total)
adjust: 11.0ms (6.2% of total)
ival-sub: 4.0ms (2.3% of total)
ival-atan2: 4.0ms (2.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch3.0ms (0%)

Memory
5.0MiB live, 5.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
3.038894348651209e-8
4.197817917116264e-6
1.0ms
-4729311.596728723
-13212.989916795224
Compiler

Compiled 1 032 to 774 computations (25% saved)

bsearch190.0ms (0.4%)

Memory
7.9MiB live, 195.7MiB allocated; 117ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
94.0ms
1.0190985712762951e-41
4.7979995110388946e-39
90.0ms
-0.46033503590626335
-0.00045179957754921946
Samples
150.0ms114×1valid
22.0ms142×0valid
Compiler

Compiled 971 to 744 computations (23.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 162.0ms
ival-cos: 67.0ms (41.3% of total)
ival-sin: 56.0ms (34.5% of total)
ival-mult: 24.0ms (14.8% of total)
adjust: 8.0ms (4.9% of total)
ival-sub: 4.0ms (2.5% of total)
ival-atan2: 4.0ms (2.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch99.0ms (0.2%)

Memory
-40.7MiB live, 104.3MiB allocated; 71ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
89.0ms
19.16432992882967
136441.20028139045
1.0ms
-0.46033503590626335
-0.00045179957754921946
Samples
50.0ms48×1valid
17.0ms80×0valid
Compiler

Compiled 971 to 744 computations (23.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 50.0ms
ival-sin: 20.0ms (40.4% of total)
ival-cos: 18.0ms (36.3% of total)
ival-mult: 5.0ms (10.1% of total)
adjust: 3.0ms (6.1% of total)
ival-sub: 2.0ms (4% of total)
ival-atan2: 2.0ms (4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch52.0ms (0.1%)

Memory
28.3MiB live, 73.5MiB allocated; 6ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
49.0ms
-0.46033503590626335
-0.00045179957754921946
Samples
38.0ms40×1valid
7.0ms40×0valid
Compiler

Compiled 491 to 384 computations (21.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 42.0ms
ival-cos: 15.0ms (35.9% of total)
ival-sin: 13.0ms (31.1% of total)
adjust: 8.0ms (19.2% of total)
ival-mult: 3.0ms (7.2% of total)
ival-sub: 1.0ms (2.4% of total)
ival-atan2: 1.0ms (2.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch1.5s (2.9%)

Memory
-27.8MiB live, 119.7MiB allocated; 23ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.4s
1.2266206077989552e+94
1.1509471493525757e+96
Samples
1.4s108×1valid
1.0ms0valid
Compiler

Compiled 503 to 381 computations (24.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.4s
ival-atan2: 1.3s (93.2% of total)
ival-sub: 29.0ms (2% of total)
ival-sin: 28.0ms (1.9% of total)
ival-cos: 27.0ms (1.9% of total)
adjust: 7.0ms (0.5% of total)
ival-mult: 6.0ms (0.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch292.0ms (0.6%)

Memory
32.7MiB live, 236.3MiB allocated; 51ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
204.0ms
9.044947607694447e-14
6.082305535524197e-5
81.0ms
-1.9451860909451675e-13
-5.5472264817025e-19
Samples
245.0ms125×1valid
26.0ms163×0valid
Compiler

Compiled 1 449 to 1 050 computations (27.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 261.0ms
ival-sub: 128.0ms (49.1% of total)
ival-sin: 54.0ms (20.7% of total)
ival-cos: 43.0ms (16.5% of total)
adjust: 21.0ms (8.1% of total)
ival-mult: 10.0ms (3.8% of total)
ival-atan2: 4.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch239.0ms (0.5%)

Memory
-25.5MiB live, 63.6MiB allocated; 20ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.0190985712762951e-41
4.7979995110388946e-39
234.0ms
-0.00045179957754921946
-5.265352198658579e-12
Samples
214.0ms63×1valid
13.0ms81×0valid
Compiler

Compiled 1 404 to 993 computations (29.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 222.0ms
ival-mult: 120.0ms (54% of total)
ival-sin: 74.0ms (33.3% of total)
ival-cos: 19.0ms (8.6% of total)
adjust: 4.0ms (1.8% of total)
ival-sub: 2.0ms (0.9% of total)
ival-atan2: 2.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch160.0ms (0.3%)

Memory
6.6MiB live, 254.4MiB allocated; 43ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
90.0ms
0.02694854669064284
59133.995051061705
64.0ms
-2.209281787710003e-5
-2.4754334632749085e-14
Samples
121.0ms135×1valid
20.0ms121×0valid
Compiler

Compiled 1 575 to 1 095 computations (30.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 132.0ms
ival-sin: 53.0ms (40.3% of total)
ival-cos: 47.0ms (35.7% of total)
ival-mult: 14.0ms (10.6% of total)
adjust: 9.0ms (6.8% of total)
ival-sub: 4.0ms (3% of total)
ival-atan2: 4.0ms (3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch392.0ms (0.8%)

Memory
16.0MiB live, 60.8MiB allocated; 11ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.0190985712762951e-41
4.7979995110388946e-39
388.0ms
-0.00045179957754921946
-5.265352198658579e-12
Samples
353.0ms74×0valid
30.0ms38×1valid
Compiler

Compiled 1 480 to 1 026 computations (30.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 38.0ms
ival-sin: 14.0ms (36.9% of total)
ival-cos: 14.0ms (36.9% of total)
ival-mult: 4.0ms (10.5% of total)
adjust: 3.0ms (7.9% of total)
ival-sub: 2.0ms (5.3% of total)
ival-atan2: 2.0ms (5.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

simplify84.0ms (0.2%)

Memory
-7.1MiB live, 81.7MiB allocated; 19ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02481702
14371701
27121701
313881701
426831701
548421701
Stop Event
node limit
Calls
Call 1
Inputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(if (<=.f64 phi2 #s(literal -8116567392432203/73786976294838206464 binary64)) #s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))) (if (<=.f64 phi2 #s(literal 4835703278458517/9671406556917033397649408 binary64)) (atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) #s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(if (<=.f64 lambda2 #s(literal -3246626956972881/147573952589676412928 binary64)) (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (if (<=.f64 lambda2 #s(literal 8116567392432203/73786976294838206464 binary64)) (atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))) (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))))
(if (<=.f64 phi1 #s(literal -4150517416584649/1152921504606846976 binary64)) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 #s(literal 7791904696734915/4722366482869645213696 binary64)) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 #s(literal -13400 binary64)) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 #s(literal 4835703278458517/151115727451828646838272 binary64)) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 #s(literal -13400 binary64)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))) (if (<=.f64 phi1 #s(literal 4835703278458517/151115727451828646838272 binary64)) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(if (<=.f64 lambda1 #s(literal -208967022709991/36028797018963968 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))))
(if (<=.f64 lambda1 #s(literal -208967022709991/36028797018963968 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 #s(literal 39/2 binary64)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 #s(literal -226981421219473/18014398509481984 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 lambda2 #s(literal 12500000000000000252735989089449337357201204040179471764222210702600050062477053866983722844160 binary64)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 lambda1 #s(literal -1687496479023819/2596148429267413814265248164610048 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 lambda1 #s(literal 8613596464754233/151115727451828646838272 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (<=.f64 lambda1 #s(literal -8028023020878397/4722366482869645213696 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 lambda2 #s(literal -4533471823554859/37778931862957161709568 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))) (if (<=.f64 lambda2 #s(literal 1170935903116329/4503599627370496 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (<=.f64 lambda1 #s(literal -4242751136953197/36893488147419103232 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
Outputs
(atan2.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (sin lambda2) (sin lambda1)) (* (cos lambda1) (cos lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(if (<=.f64 phi2 #s(literal -8116567392432203/73786976294838206464 binary64)) #s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))) (if (<=.f64 phi2 #s(literal 4835703278458517/9671406556917033397649408 binary64)) (atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) #s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))))
(if (or (<=.f64 phi2 #s(literal -8116567392432203/73786976294838206464 binary64)) (not (<=.f64 phi2 #s(literal 4835703278458517/9671406556917033397649408 binary64)))) #s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))) (atan2.f64 #s(approx (+ (* (* (sin lambda1) (cos lambda2)) (cos phi2)) (* (* (neg (cos lambda1)) (sin lambda2)) (cos phi2))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 phi2))) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))))
(if (<=.f64 lambda2 #s(literal -3246626956972881/147573952589676412928 binary64)) (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (if (<=.f64 lambda2 #s(literal 8116567392432203/73786976294838206464 binary64)) (atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))) (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1)))))))
(if (or (<=.f64 lambda2 #s(literal -3246626956972881/147573952589676412928 binary64)) (not (<=.f64 lambda2 #s(literal 8116567392432203/73786976294838206464 binary64)))) (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (sin lambda2) (cos lambda1))) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))))))
(if (<=.f64 phi1 #s(literal -4150517416584649/1152921504606846976 binary64)) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 #s(literal 7791904696734915/4722366482869645213696 binary64)) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (or (<=.f64 phi1 #s(literal -4150517416584649/1152921504606846976 binary64)) (not (<=.f64 phi1 #s(literal 7791904696734915/4722366482869645213696 binary64)))) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi1 #s(literal -13400 binary64)) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 #s(literal 4835703278458517/151115727451828646838272 binary64)) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (or (<=.f64 phi1 #s(literal -13400 binary64)) (not (<=.f64 phi1 #s(literal 4835703278458517/151115727451828646838272 binary64)))) (atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 phi1 #s(literal -13400 binary64)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))) (if (<=.f64 phi1 #s(literal 4835703278458517/151115727451828646838272 binary64)) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))))
(if (or (<=.f64 phi1 #s(literal -13400 binary64)) (not (<=.f64 phi1 #s(literal 4835703278458517/151115727451828646838272 binary64)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(if (<=.f64 lambda1 #s(literal -208967022709991/36028797018963968 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))))
(if (<=.f64 lambda1 #s(literal -208967022709991/36028797018963968 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 #s(literal 39/2 binary64)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (or (<=.f64 lambda1 #s(literal -208967022709991/36028797018963968 binary64)) (not (<=.f64 lambda1 #s(literal 39/2 binary64)))) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 lambda1 #s(literal -226981421219473/18014398509481984 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 lambda2 #s(literal 12500000000000000252735989089449337357201204040179471764222210702600050062477053866983722844160 binary64)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 lambda1 #s(literal -1687496479023819/2596148429267413814265248164610048 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 lambda1 #s(literal 8613596464754233/151115727451828646838272 binary64)) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (or (<=.f64 lambda1 #s(literal -1687496479023819/2596148429267413814265248164610048 binary64)) (not (<=.f64 lambda1 #s(literal 8613596464754233/151115727451828646838272 binary64)))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 lambda1 #s(literal -8028023020878397/4722366482869645213696 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (or (<=.f64 lambda1 #s(literal -8028023020878397/4722366482869645213696 binary64)) (not (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 lambda2 #s(literal -4533471823554859/37778931862957161709568 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))) (if (<=.f64 lambda2 #s(literal 1170935903116329/4503599627370496 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (<=.f64 lambda1 #s(literal -4242751136953197/36893488147419103232 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 lambda1 #s(literal 3601364521034839/766247770432944429179173513575154591809369561091801088 binary64)) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda2)))))) (atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) #s(approx (cos (- lambda2 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 #s(approx (- lambda1 lambda2) lambda1))) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))

derivations3.2s (6.3%)

Memory
-7.8MiB live, 855.5MiB allocated; 128ms collecting garbage
Stop Event
fuel
Compiler

Compiled 1 657 to 229 computations (86.2% saved)

preprocess211.0ms (0.4%)

Memory
-7.3MiB live, 182.4MiB allocated; 27ms collecting garbage
Compiler

Compiled 3 362 to 492 computations (85.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...