Bearing on a great circle

Time bar (total: 17.5s)

start0.0ms (0%)

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

analyze781.0ms (4.5%)

Memory
30.2MiB live, 910.8MiB allocated; 178ms 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)

sample6.3s (36%)

Memory
55.0MiB live, 8 646.8MiB allocated; 881ms collecting garbage
Samples
5.3s5 932×1valid
486.0ms2 324×0valid
Precisions
Click to see histograms. Total time spent on operations: 5.4s
ival-cos: 2.2s (41.6% of total)
ival-sin: 2.2s (40.4% of total)
adjust: 370.0ms (6.9% of total)
ival-mult!: 337.0ms (6.2% of total)
ival-atan2: 172.0ms (3.2% of total)
ival-sub!: 89.0ms (1.6% of total)
Bogosity

explain624.0ms (3.6%)

Memory
-3.8MiB live, 840.9MiB allocated; 155ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
68127(8.119320290625834e+158 -1.0836644737056393e-81 4.926935994651231e+307 -2.1480084176631222e-142)0-(sin.f64 (-.f64 lambda1 lambda2))
68127(8.119320290625834e+158 -1.0836644737056393e-81 4.926935994651231e+307 -2.1480084176631222e-142)0-(cos.f64 (-.f64 lambda1 lambda2))
10-0-(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (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-(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
-.f64(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))cancellation10
Confusion
Predicted +Predicted -
+530
-14261
Precision
0.2717948717948718
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+5300
-142061
Precision?
0.2717948717948718
Recall?
1.0
Freqs
test
numberfreq
061
2194
31
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
382.0ms386×1valid
22.0ms126×0valid
Compiler

Compiled 208 to 55 computations (73.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 359.0ms
ival-cos: 151.0ms (42.1% of total)
ival-sin: 143.0ms (39.9% of total)
ival-atan2: 23.0ms (6.4% of total)
adjust: 19.0ms (5.3% of total)
ival-mult!: 18.0ms (5% of total)
ival-sub!: 5.0ms (1.4% of total)

preprocess43.0ms (0.2%)

Memory
-12.1MiB live, 33.4MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0107376
1251374
2554374
31316374
42923374
56350374
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.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 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 48 to 34 computations (29.2% saved)

series38.0ms (0.2%)

Memory
27.3MiB live, 73.5MiB allocated; 4ms collecting garbage
Counts
17 → 128
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
#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 lambda1 #s(hole binary64 lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 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 lambda2 #s(hole binary64 lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#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 (- 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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 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 phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#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 (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
Calls

12 calls:

TimeVariablePointExpression
5.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) lambda1 lambda2 (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- lambda1 lambda2)))
4.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) lambda1 lambda2 (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- lambda1 lambda2)))
4.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) lambda1 lambda2 (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- lambda1 lambda2)))
3.0ms
lambda2
@0
((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) lambda1 lambda2 (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- lambda1 lambda2)))
3.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) lambda1 lambda2 (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- lambda1 lambda2)))

rewrite247.0ms (1.4%)

Memory
5.9MiB live, 246.5MiB allocated; 72ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05713195
05933128
134973128
086243012
Stop Event
iter-limit
node-limit
iter-limit
Counts
145 → 196
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))
#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 lambda1 #s(hole binary64 lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 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 lambda2 #s(hole binary64 lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#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 (- 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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 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 phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#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 (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(/.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)))) #s(literal -2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(/.f64 (neg.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2))) (neg.f64 (+.f64 lambda1 lambda2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 lambda1 #s(literal 3 binary64)) (pow.f64 lambda2 #s(literal 3 binary64)))) (neg.f64 (fma.f64 lambda1 lambda1 (fma.f64 lambda2 lambda2 (*.f64 lambda1 lambda2)))))
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))
(/.f64 (-.f64 (pow.f64 lambda1 #s(literal 3 binary64)) (pow.f64 lambda2 #s(literal 3 binary64))) (fma.f64 lambda1 lambda1 (fma.f64 lambda2 lambda2 (*.f64 lambda1 lambda2))))
(-.f64 lambda1 lambda2)
lambda1
lambda2
(fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 phi2)))
(cos.f64 (neg.f64 phi2))
(cos.f64 phi2)
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
phi2
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 phi2 (neg.f64 phi1))) (sin.f64 (+.f64 phi2 (neg.f64 phi1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 phi2 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 phi2 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))) phi2)) (cos.f64 (+.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))) phi2))) #s(literal 2 binary64))
(fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 phi1) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 phi1)))
(cos.f64 (neg.f64 phi1))
(cos.f64 phi1)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
phi1
(sin.f64 phi2)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(/.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) #s(literal -2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 phi1 (neg.f64 phi2))) (sin.f64 (+.f64 phi1 (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 phi1 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 phi1 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) phi1)) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) phi1))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64))
(sin.f64 phi1)
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
#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))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64))) lambda1 (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx lambda1 lambda1)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) lambda1 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 #s(literal -1/2 binary64) (cos.f64 lambda2))) lambda1) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) (*.f64 (fma.f64 (/.f64 lambda2 lambda1) #s(literal -1 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (neg.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (- lambda1 lambda2) (fma.f64 #s(literal -1 binary64) lambda2 lambda1))
#s(approx lambda2 lambda2)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (neg.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))) lambda2 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) lambda2 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) lambda2 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (cos.f64 lambda1) (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))) lambda2 (cos.f64 lambda1)))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (fma.f64 (/.f64 lambda1 lambda2) #s(literal -1 binary64) #s(literal 1 binary64))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (sin.f64 phi2) (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) (sin.f64 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1)) (sin.f64 phi2) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (sin.f64 phi2)))
#s(approx (cos phi1) #s(literal 1 binary64))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx phi1 phi1)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (cos.f64 phi2) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (cos.f64 phi2) (cos.f64 phi2)) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) (cos.f64 phi2) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (cos.f64 phi2)) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1)) (cos.f64 phi2) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (cos.f64 phi2)) phi1))
#s(approx (sin phi1) phi1)
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
#s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1))
#s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
#s(approx (sin phi1) (sin.f64 phi1))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal -1/2 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi2) #s(literal 1 binary64))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx phi2 phi2)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi1)) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) phi2) (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) phi2 (cos.f64 phi1)) phi2 (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64)) (cos.f64 phi1) (cos.f64 phi1)) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) (cos.f64 phi1) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (cos.f64 phi1)) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64)) (cos.f64 phi1) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (cos.f64 phi1)) phi2))
#s(approx (sin phi2) phi2)
#s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))
#s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))
#s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal -1/2 binary64) (sin.f64 phi1)))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (sin.f64 phi1)))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (sin.f64 phi1)))
#s(approx (cos phi2) (cos.f64 phi2))
#s(approx (sin phi2) (sin.f64 phi2))

eval34.0ms (0.2%)

Memory
-23.6MiB live, 68.8MiB allocated; 5ms collecting garbage
Compiler

Compiled 8 199 to 1 137 computations (86.1% saved)

prune41.0ms (0.2%)

Memory
29.7MiB live, 76.4MiB allocated; 2ms collecting garbage
Pruning

40 alts after pruning (40 fresh and 0 done)

PrunedKeptTotal
New19140231
Fresh000
Picked101
Done000
Total19240232
Accuracy
91.6%
Counts
232 → 40
Alt Table
Click to see full alt table
StatusAccuracyProgram
13.3%
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
91.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)))))
41.3%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
53.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
53.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
76.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
81.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
81.5%
(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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
59.9%
(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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
63.8%
(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))))))
66.5%
(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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
70.8%
(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)) (cos.f64 lambda2)))))
54.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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
47.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
49.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
47.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
49.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
51.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
50.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
54.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.2%
(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)) (cos.f64 (-.f64 lambda1 lambda2)))))
49.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
49.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
70.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
51.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
48.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
52.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
50.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
50.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
67.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
51.4%
(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)))))
49.8%
(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)))))
62.6%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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)))))
61.6%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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)))))
61.8%
(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)))))
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 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 2 708 to 1 854 computations (31.5% saved)

series53.0ms (0.3%)

Memory
7.7MiB live, 105.7MiB allocated; 8ms collecting garbage
Counts
44 → 210
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 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)
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(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)) (cos.f64 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))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 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)))))
(*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (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 lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- 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 (- 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 (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- 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 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 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 (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 (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (cos lambda2) #s(hole binary64 1))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 lambda2) #s(hole binary64 lambda2))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#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 (- 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 (+ lambda1 (* -1 lambda2))))
#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 (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* -1 lambda2)))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (sin lambda2) #s(hole binary64 (sin lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ 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 (+ 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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 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 phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#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 (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#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 (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
Calls

12 calls:

TimeVariablePointExpression
9.0ms
lambda1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- 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)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 1 (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- 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)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
5.0ms
lambda2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- 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)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 1 (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- 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)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
4.0ms
lambda2
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- 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)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 1 (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- 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)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
4.0ms
lambda1
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- 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)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 1 (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- 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)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
4.0ms
phi2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (cos (- 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)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 1 (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- 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)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))

rewrite187.0ms (1.1%)

Memory
-7.1MiB live, 271.1MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09135336
09814958
156164958
080964774
Stop Event
iter-limit
node-limit
iter-limit
Counts
254 → 393
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 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)
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(sin.f64 (-.f64 lambda1 lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(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)) (cos.f64 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))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 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)))))
(*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (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 lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- 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 (- 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 (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- 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 lambda2)) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 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 (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 (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (cos lambda2) #s(hole binary64 1))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 lambda2) #s(hole binary64 lambda2))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#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 (- 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 (+ lambda1 (* -1 lambda2))))
#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 (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* -1 lambda2)))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (sin lambda2) #s(hole binary64 (sin lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ 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 (+ 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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 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 phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#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 (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#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 (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (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 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (sin.f64 (+.f64 lambda1 lambda2)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.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 lambda1 lambda2))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.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))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (neg.f64 (neg.f64 lambda2)))) (sin.f64 (+.f64 lambda1 (neg.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 lambda1 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 lambda1 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(sin.f64 lambda1)
lambda1
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fma.f64 (sin.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 (neg.f64 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 lambda2))))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 (neg.f64 lambda1))) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda2 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 lambda2 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda2)) (cos.f64 (+.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda2))) #s(literal 2 binary64))
(fma.f64 (sin.f64 lambda1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 lambda1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 lambda1)))
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 lambda1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 lambda2)
(fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 phi2)))
(cos.f64 (neg.f64 phi2))
(cos.f64 phi2)
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
phi2
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 phi2 (neg.f64 phi1))) (sin.f64 (+.f64 phi2 (neg.f64 phi1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 phi2 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 phi2 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))) phi2)) (cos.f64 (+.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))) phi2))) #s(literal 2 binary64))
(fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 phi1) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 phi1)))
(cos.f64 (neg.f64 phi1))
(cos.f64 phi1)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
phi1
(sin.f64 phi2)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 phi1 (neg.f64 phi2))) (sin.f64 (+.f64 phi1 (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) phi1)) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) phi1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 phi1 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 phi1 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64))
(sin.f64 phi1)
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))
(/.f64 (-.f64 (pow.f64 lambda1 #s(literal 3 binary64)) (pow.f64 lambda2 #s(literal 3 binary64))) (fma.f64 lambda1 lambda1 (fma.f64 lambda2 lambda2 (*.f64 lambda2 lambda1))))
(-.f64 lambda1 lambda2)
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (sin.f64 (+.f64 lambda1 lambda2)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.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 lambda1 lambda2))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (fma.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(fma.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (sin.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))))))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 phi1 #s(literal 1 binary64)) (pow.f64 phi1 #s(literal 1 binary64)))
(*.f64 (fabs.f64 phi1) (fabs.f64 phi1))
(*.f64 (neg.f64 phi1) (neg.f64 phi1))
(*.f64 phi1 phi1)
(pow.f64 phi1 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64))))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (fma.f64 (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(/.f64 (-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) lambda1))) (-.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))))
(/.f64 (+.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal 3 binary64))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (sin.f64 lambda2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal 3 binary64)) (pow.f64 (neg.f64 (sin.f64 lambda2)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) lambda1) (-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))))))
(fma.f64 #s(literal -1 binary64) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 (sin.f64 lambda2) #s(literal -1 binary64) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))
(-.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))
(*.f64 #s(literal -1 binary64) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) #s(literal -1 binary64))
(neg.f64 (sin.f64 lambda2))
(fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64))))
(sin.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 lambda2 (PI.f64)))
(sin.f64 (neg.f64 lambda2))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (PI.f64))) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal 1/2 binary64) (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (cos.f64 lambda2) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (sin lambda1) lambda1)
#s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1) #s(literal 1/120 binary64)) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx lambda1 lambda1)
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (sin.f64 lambda2) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1)) (sin.f64 lambda2) (*.f64 #s(literal 1/24 binary64) (sin.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (cos lambda1) #s(literal 1 binary64))
#s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1) #s(literal 1/24 binary64)) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) lambda1 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) lambda1) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) #s(literal -1/2 binary64))) lambda1 (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
#s(approx (cos lambda1) (cos.f64 lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) (*.f64 (fma.f64 (/.f64 lambda2 lambda1) #s(literal -1 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (fma.f64 (/.f64 (sin.f64 lambda2) lambda1) #s(literal -1 binary64) (cos.f64 lambda2)) lambda1))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (neg.f64 lambda1) (fma.f64 #s(literal -1 binary64) (cos.f64 lambda2) (/.f64 (sin.f64 lambda2) lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (neg.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (sin.f64 lambda1) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/720 binary64)) (sin.f64 lambda1) (*.f64 #s(literal 1/24 binary64) (sin.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (cos lambda2) #s(literal 1 binary64))
#s(approx (cos lambda2) (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda2) (fma.f64 (-.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx (cos lambda2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 lambda2 lambda2)) #s(literal 1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx lambda2 lambda2)
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (cos.f64 lambda1) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) (cos.f64 lambda1) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64)) (cos.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (sin lambda2) lambda2)
#s(approx (sin lambda2) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 lambda2 lambda2)) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (neg.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))) lambda2 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) lambda2 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) lambda2 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (cos.f64 lambda1) (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))) lambda2 (cos.f64 lambda1)))
#s(approx (- lambda1 lambda2) (fma.f64 #s(literal -1 binary64) lambda2 lambda1))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (neg.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) lambda1)
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 #s(literal -1 binary64) lambda2 lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (-.f64 (*.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64)) #s(literal 1 binary64)) lambda2 lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2) #s(literal 1 binary64)) lambda2 lambda1))
#s(approx (neg (sin lambda2)) (neg.f64 lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (-.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) #s(literal 1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2)) #s(literal 1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 lambda2 lambda2)) #s(literal 1/120 binary64)) (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2)) #s(literal 1 binary64)) lambda2))
#s(approx (cos lambda2) (cos.f64 lambda2))
#s(approx (sin lambda2) (sin.f64 lambda2))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (fma.f64 (/.f64 lambda1 lambda2) #s(literal -1 binary64) #s(literal 1 binary64))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (*.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (sin.f64 phi2) (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (sin.f64 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64)) (sin.f64 phi2) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (sin.f64 phi2)))
#s(approx (cos phi1) #s(literal 1 binary64))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx phi1 phi1)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (cos.f64 phi2) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (cos.f64 phi2) (cos.f64 phi2)) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (cos.f64 phi2) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (cos.f64 phi2)) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64)) (cos.f64 phi2) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (cos.f64 phi2)) phi1))
#s(approx (sin phi1) phi1)
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
#s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1))
#s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (* phi1 phi1) (*.f64 phi1 phi1))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
#s(approx (sin phi1) (sin.f64 phi1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (-.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (cos phi2) #s(literal 1 binary64))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx phi2 phi2)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi1)) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) phi2) (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) phi2 (cos.f64 phi1)) phi2 (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64)) (cos.f64 phi1) (cos.f64 phi1)) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) (cos.f64 phi1) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (cos.f64 phi1)) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64)) (cos.f64 phi1) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (cos.f64 phi1)) phi2))
#s(approx (sin phi2) phi2)
#s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))
#s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))
#s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) #s(literal 1/24 binary64) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal -1/2 binary64) (sin.f64 phi1)))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (sin.f64 phi1)))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (sin.f64 phi1)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi2) (cos.f64 phi2))
#s(approx (sin phi2) (sin.f64 phi2))

eval129.0ms (0.7%)

Memory
2.6MiB live, 242.5MiB allocated; 35ms collecting garbage
Compiler

Compiled 36 775 to 2 853 computations (92.2% saved)

prune100.0ms (0.6%)

Memory
-4.7MiB live, 185.7MiB allocated; 8ms collecting garbage
Pruning

80 alts after pruning (79 fresh and 1 done)

PrunedKeptTotal
New83668904
Fresh241135
Picked415
Done000
Total86480944
Accuracy
99.9%
Counts
944 → 80
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.2%
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (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)))))
53.1%
(atan2.f64 (*.f64 (-.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64)) (*.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)))))
84.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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)))))
78.5%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
79.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
78.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
69.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
69.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
80.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #s(approx (- lambda1 lambda2) lambda1)))))
59.5%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
70.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
58.5%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
78.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
80.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
77.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
58.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
58.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
58.0%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
58.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
84.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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)))))
37.4%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
24.7%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
47.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
76.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
81.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
60.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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
60.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)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
60.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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
68.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
61.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
46.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
49.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.2%
(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)) (cos.f64 (-.f64 lambda1 lambda2)))))
61.6%
(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)) (cos.f64 lambda2)))))
49.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
70.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
51.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
48.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
52.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
32.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
33.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
39.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
38.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
67.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
63.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
46.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
51.4%
(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)))))
51.2%
(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)) (cos.f64 lambda2)))))
37.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
39.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)) (cos.f64 lambda2)))))
36.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.5%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
40.7%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.8%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
53.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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
55.7%
(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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
61.9%
(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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
39.5%
(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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
61.9%
(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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
42.6%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
61.4%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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)))))
40.2%
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
52.8%
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 5 863 to 4 109 computations (29.9% saved)

series98.0ms (0.6%)

Memory
12.2MiB live, 138.5MiB allocated; 36ms collecting garbage
Counts
60 → 278
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
#s(approx (cos phi2) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
(*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))
#s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #s(approx (- lambda1 lambda2) lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (- lambda1 lambda2) lambda1)
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (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 lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* -1 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* 1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda2)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* -1/2 (* lambda1 (cos lambda2))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (cos lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* -1/2 (* (pow lambda1 2) (cos lambda2))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow lambda1 2) (cos lambda2))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (cos lambda2))) (* 1/24 (cos lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (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 (- 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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda1) (cos lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (cos lambda2) #s(hole binary64 1))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 lambda2) #s(hole binary64 lambda2))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda2 (- (* 1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos lambda2)) (* (sin lambda1) (sin 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) (cos lambda2)) (* (sin lambda1) (sin 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 lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda1)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* -1/2 (* lambda2 (cos lambda1))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* -1/2 (* (pow lambda2 2) (cos lambda1))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* 1/24 (* (pow lambda2 2) (cos lambda1))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos lambda1))) (* 1/24 (cos lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#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 (- 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 (+ lambda2 (/ (PI) 2))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* lambda2 (cos (* 1/2 (PI)))))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* lambda2 (+ (cos (* 1/2 (PI))) (* -1/2 (* lambda2 (sin (* 1/2 (PI))))))))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* lambda2 (+ (cos (* 1/2 (PI))) (* lambda2 (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* lambda2 (cos (* 1/2 (PI))))))))))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (* 1/2 (PI))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (+ lambda2 (* 1/2 (PI)))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (sin lambda2) #s(hole binary64 (sin lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (sin (+ lambda2 (* 1/2 (PI))))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 lambda2))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (* lambda2 (+ 1 (* 1/2 (/ (PI) 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 (* -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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) (* -1 lambda2)))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (* -1 (* lambda2 (- (* -1/2 (/ (PI) lambda2)) 1)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))) (* (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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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 (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#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 (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 phi1))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow phi1 2)))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1/6 (pow phi1 3))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* (pow phi1 3) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* -1/6 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1 (* (pow phi1 3) (- 1/6 (/ 1 (pow phi1 2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (* -1 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))) (* (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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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 (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/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))))
#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) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
Calls

12 calls:

TimeVariablePointExpression
22.0ms
lambda1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (sin phi1) (cos phi2)) (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (sin (+ lambda2 (/ (PI) 2))) (+ lambda2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2))
21.0ms
lambda2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (sin phi1) (cos phi2)) (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (sin (+ lambda2 (/ (PI) 2))) (+ lambda2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2))
8.0ms
phi2
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (sin phi1) (cos phi2)) (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (sin (+ lambda2 (/ (PI) 2))) (+ lambda2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2))
5.0ms
lambda1
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (sin phi1) (cos phi2)) (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (sin (+ lambda2 (/ (PI) 2))) (+ lambda2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2))
5.0ms
phi1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (sin phi1) (cos phi2)) (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (sin (+ lambda2 (/ (PI) 2))) (+ lambda2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2))

rewrite208.0ms (1.2%)

Memory
23.1MiB live, 165.8MiB allocated; 33ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011778079
012647054
176647054
083096792
Stop Event
iter-limit
node-limit
iter-limit
Counts
338 → 493
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
#s(approx (cos phi2) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
(*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))
#s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #s(approx (- lambda1 lambda2) lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (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 lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* -1 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* 1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda2)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* -1/2 (* lambda1 (cos lambda2))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (cos lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* -1/2 (* (pow lambda1 2) (cos lambda2))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow lambda1 2) (cos lambda2))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (cos lambda2))) (* 1/24 (cos lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (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 (- 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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda1) (cos lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (cos lambda2) #s(hole binary64 1))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 lambda2) #s(hole binary64 lambda2))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda2 (- (* 1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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) (cos lambda2)) (* (sin lambda1) (sin 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) (cos lambda2)) (* (sin lambda1) (sin 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 lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda1)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* -1/2 (* lambda2 (cos lambda1))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* -1/2 (* (pow lambda2 2) (cos lambda1))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* 1/24 (* (pow lambda2 2) (cos lambda1))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos lambda1))) (* 1/24 (cos lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#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 (- 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 (+ lambda2 (/ (PI) 2))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* lambda2 (cos (* 1/2 (PI)))))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* lambda2 (+ (cos (* 1/2 (PI))) (* -1/2 (* lambda2 (sin (* 1/2 (PI))))))))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* lambda2 (+ (cos (* 1/2 (PI))) (* lambda2 (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* lambda2 (cos (* 1/2 (PI))))))))))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (* 1/2 (PI))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (+ lambda2 (* 1/2 (PI)))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (sin lambda2) #s(hole binary64 (sin lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (sin (+ lambda2 (* 1/2 (PI))))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 lambda2))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (* lambda2 (+ 1 (* 1/2 (/ (PI) 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 (* -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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) (* -1 lambda2)))))
#s(approx (+ lambda2 (/ (PI) 2)) #s(hole binary64 (* -1 (* lambda2 (- (* -1/2 (/ (PI) lambda2)) 1)))))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))) (* (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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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 (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#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 (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 phi1))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow phi1 2)))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1/6 (pow phi1 3))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* (pow phi1 3) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* -1/6 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1 (* (pow phi1 3) (- 1/6 (/ 1 (pow phi1 2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (* -1 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))) (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/2 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))) (* (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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (sin phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin 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 (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/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))))
#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) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
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 lambda1 lambda2)) (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 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.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 lambda1 lambda2))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.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))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(sin.f64 lambda1)
lambda1
(fma.f64 (sin.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) lambda2))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
(+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(sin.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi2))
(cos.f64 phi2)
phi2
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (fma.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1))))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi1))
(cos.f64 phi1)
phi1
(sin.f64 phi2)
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(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 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64))
(sin.f64 phi1)
(/.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)))) (-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64))) (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 (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 (cos.f64 lambda1) (cos.f64 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 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)))
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) (cos.f64 lambda1))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 lambda1) (neg.f64 (neg.f64 lambda2)))) (cos.f64 (-.f64 (neg.f64 lambda1) (neg.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 (neg.f64 lambda2))) (cos.f64 (-.f64 (neg.f64 lambda1) (neg.f64 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (cos.f64 (-.f64 (neg.f64 lambda1) lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 lambda1 (neg.f64 (neg.f64 lambda2)))) (cos.f64 (-.f64 lambda1 (neg.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 (-.f64 lambda1 (neg.f64 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 lambda2)) (neg.f64 lambda1))) (cos.f64 (-.f64 (neg.f64 (neg.f64 lambda2)) (neg.f64 lambda1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 (-.f64 (neg.f64 (neg.f64 lambda2)) lambda1))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 (neg.f64 lambda1))) (cos.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 (-.f64 (neg.f64 lambda2) lambda1))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (cos.f64 (-.f64 lambda2 (neg.f64 lambda1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 2 binary64))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64)))
(*.f64 #s(approx (cos phi2) #s(literal 1 binary64)) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.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 lambda1 lambda2))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))
(/.f64 (-.f64 (pow.f64 lambda1 #s(literal 3 binary64)) (pow.f64 lambda2 #s(literal 3 binary64))) (fma.f64 lambda1 lambda1 (fma.f64 lambda2 lambda2 (*.f64 lambda1 lambda2))))
(-.f64 lambda1 lambda2)
#s(approx (cos phi2) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))) (*.f64 (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (fma.f64 (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(fma.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (sin.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (neg.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (neg.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 phi1 #s(literal 1 binary64)) (pow.f64 phi1 #s(literal 1 binary64)))
(*.f64 (fabs.f64 phi1) (fabs.f64 phi1))
(*.f64 (neg.f64 phi1) (neg.f64 phi1))
(*.f64 phi1 phi1)
(pow.f64 phi1 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64))))
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)))
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
(*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)
(*.f64 phi1 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) phi1 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) phi1))
(fma.f64 phi1 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))))
(+.f64 (*.f64 #s(literal 1 binary64) phi1) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) phi1))
(+.f64 (*.f64 phi1 #s(literal 1 binary64)) (*.f64 phi1 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 phi1 (*.f64 phi1 #s(literal -1/6 binary64)) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 phi1 phi1)))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)))
#s(literal -1/6 binary64)
(/.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)))) (-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64))) (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 (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 (cos.f64 lambda1) (cos.f64 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 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)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (fma.f64 (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
(fma.f64 (sin.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) lambda2))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
(+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 lambda2 lambda2) (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (-.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 lambda2 #s(literal 3 binary64)) (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 lambda2 lambda2 (-.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))
(+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) lambda2)
(+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (neg.f64 (PI.f64)) #s(literal -2 binary64))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (fma.f64 (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(*.f64 (cos.f64 #s(approx (- lambda1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) lambda1))))
(sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 #s(approx (- lambda1 lambda2) lambda1)))
(cos.f64 #s(approx (- lambda1 lambda2) lambda1))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal 1/2 binary64) (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (cos.f64 lambda2) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) #s(literal -1/6 binary64))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 (cos.f64 lambda2) #s(literal -1/6 binary64))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (sin lambda1) lambda1)
#s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1) #s(literal 1/120 binary64)) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx lambda1 lambda1)
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (sin.f64 lambda2) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1)) (sin.f64 lambda2) (*.f64 #s(literal 1/24 binary64) (sin.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (cos lambda1) #s(literal 1 binary64))
#s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1) #s(literal 1/24 binary64)) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) lambda1 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) lambda1 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64) (sin.f64 lambda2)) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) lambda1 (sin.f64 lambda2)) lambda1 (cos.f64 lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2))
#s(approx (* (cos lambda1) (cos lambda2)) (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (cos.f64 lambda2) (cos.f64 lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal 1/24 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/6 binary64) (sin.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal 1/120 binary64) (*.f64 (sin.f64 lambda2) #s(literal -1/6 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/5040 binary64) (*.f64 #s(literal 1/120 binary64) (sin.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) #s(literal -1/6 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)) lambda1))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) #s(literal -1/2 binary64))) lambda1 (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))) (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) lambda1) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
#s(approx (cos lambda1) (cos.f64 lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) (*.f64 (fma.f64 (/.f64 lambda2 lambda1) #s(literal -1 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2))))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (neg.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (sin.f64 lambda1) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/720 binary64)) (sin.f64 lambda1) (*.f64 #s(literal 1/24 binary64) (sin.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (sin (+ lambda2 (/ (PI) 2))) #s(literal 1 binary64))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 lambda2 lambda2)) #s(literal 1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx lambda2 lambda2)
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (cos.f64 lambda1) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) #s(literal -1/6 binary64))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64)) (cos.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) #s(literal -1/6 binary64))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (sin lambda2) lambda2)
#s(approx (sin lambda2) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 lambda2 lambda2)) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (neg.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))) lambda2 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) lambda2 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) lambda2 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64) (sin.f64 lambda1)) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (sin.f64 lambda1)) lambda2 (cos.f64 lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1))
#s(approx (* (cos lambda1) (cos lambda2)) (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)) #s(literal -1/2 binary64) (cos.f64 lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)) #s(literal 1/24 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda1) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (sin.f64 lambda1) (sin.f64 lambda1)) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) #s(literal -1/6 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64)) (sin.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (sin.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 (sin.f64 lambda1) #s(literal -1/6 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)) lambda2))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (neg.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (- lambda1 lambda2) (fma.f64 #s(literal -1 binary64) lambda2 lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (neg.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 phi2) (cos.f64 phi1))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))) lambda2 (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) lambda2 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) lambda2 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (cos.f64 phi2))) lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (cos.f64 lambda1) (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2 (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))) lambda2 (cos.f64 lambda1)))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) #s(literal -1/2 binary64))) lambda2 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (+ lambda2 (/ (PI) 2)) (*.f64 (PI.f64) #s(literal 1/2 binary64)))
#s(approx (+ lambda2 (/ (PI) 2)) (fma.f64 (PI.f64) #s(literal 1/2 binary64) lambda2))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (cos.f64 lambda2))
#s(approx (sin lambda2) (sin.f64 lambda2))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) lambda2)))
#s(approx (+ lambda2 (/ (PI) 2)) lambda2)
#s(approx (+ lambda2 (/ (PI) 2)) (*.f64 (fma.f64 (/.f64 (PI.f64) lambda2) #s(literal 1/2 binary64) #s(literal 1 binary64)) lambda2))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (*.f64 (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (fma.f64 (/.f64 lambda1 lambda2) #s(literal -1 binary64) #s(literal 1 binary64))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)))
#s(approx (sin (+ lambda2 (/ (PI) 2))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) lambda2))))
#s(approx (+ lambda2 (/ (PI) 2)) (*.f64 (neg.f64 lambda2) (-.f64 (*.f64 (/.f64 (PI.f64) lambda2) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -1 binary64) lambda2 lambda1)) (sin.f64 phi1)) (cos.f64 phi2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (sin.f64 phi2) (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (sin.f64 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (sin.f64 phi2)))
#s(approx (* (cos phi1) (sin phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64)) (sin.f64 phi2) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) (*.f64 phi1 phi1) (sin.f64 phi2)))
#s(approx (cos phi1) #s(literal 1 binary64))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx phi1 phi1)
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (cos.f64 phi2) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (cos.f64 phi2) (cos.f64 phi2)) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (cos.f64 phi2) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (cos.f64 phi2)) phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64)) (cos.f64 phi2) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2))) (*.f64 phi1 phi1) (cos.f64 phi2)) phi1))
#s(approx (sin phi1) phi1)
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
#s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1))
#s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2))) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (* phi1 phi1) (*.f64 phi1 phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
#s(approx (sin phi1) (sin.f64 phi1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 (pow.f64 phi1 #s(literal 3 binary64)) #s(literal -1/6 binary64)))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/6 binary64)) (pow.f64 phi1 #s(literal 3 binary64))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1)))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (neg.f64 (*.f64 (-.f64 #s(literal 1/6 binary64) (pow.f64 phi1 #s(literal -2 binary64))) (pow.f64 phi1 #s(literal 3 binary64)))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (cos phi2) #s(literal 1 binary64))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx phi2 phi2)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi1)) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) phi2) (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) phi2 (cos.f64 phi1)) phi2 (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (cos.f64 phi1) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64)) (cos.f64 phi1) (cos.f64 phi1)) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) (cos.f64 phi1) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (cos.f64 phi1)) phi2))
#s(approx (* (cos phi1) (sin phi2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64)) (cos.f64 phi1) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/6 binary64) (cos.f64 phi1))) (*.f64 phi2 phi2) (cos.f64 phi1)) phi2))
#s(approx (sin phi2) phi2)
#s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))
#s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))
#s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal -1/2 binary64) (sin.f64 phi1)))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (sin.f64 phi1)))
#s(approx (* (sin phi1) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1))) (*.f64 phi2 phi2) (sin.f64 phi1)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (cos phi2)) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi1)) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) phi2) (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) phi2 (cos.f64 phi1)) phi2 (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (*.f64 phi2 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (cos phi2) (cos.f64 phi2))
#s(approx (sin phi2) (sin.f64 phi2))

eval193.0ms (1.1%)

Memory
-16.3MiB live, 149.9MiB allocated; 117ms collecting garbage
Compiler

Compiled 35 524 to 3 008 computations (91.5% saved)

prune156.0ms (0.9%)

Memory
-20.8MiB live, 212.4MiB allocated; 29ms collecting garbage
Pruning

115 alts after pruning (112 fresh and 3 done)

PrunedKeptTotal
New75855813
Fresh175774
Picked325
Done011
Total778115893
Accuracy
99.9%
Counts
893 → 115
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
91.2%
(atan2.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
76.2%
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (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)))))
84.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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)))))
78.5%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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))))))
79.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
73.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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))))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64))) (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)))))))))
57.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
60.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
74.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
57.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
59.6%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
81.0%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
80.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
69.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
69.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
70.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
80.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #s(approx (- lambda1 lambda2) lambda1)))))
70.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
58.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
58.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
72.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
80.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
59.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
80.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
72.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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)))))
58.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
58.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
58.0%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
58.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
85.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
74.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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)))))
81.2%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
37.4%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
24.7%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
16.8%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
47.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
31.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
76.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
81.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
60.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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
49.5%
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
60.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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
68.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
56.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
61.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
46.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
49.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
28.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.2%
(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)) (cos.f64 (-.f64 lambda1 lambda2)))))
56.2%
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
61.6%
(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)) (cos.f64 lambda2)))))
49.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
70.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
51.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
48.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
52.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
32.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
33.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
39.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
29.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
38.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
30.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
30.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
30.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
30.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
67.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
63.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
46.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
29.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
40.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)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
51.2%
(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)) (cos.f64 lambda2)))))
37.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.9%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
27.6%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
39.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)) (cos.f64 lambda2)))))
36.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.5%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
31.8%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.8%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
53.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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
55.7%
(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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
61.9%
(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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
61.9%
(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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
42.6%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
31.3%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
61.4%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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)))))
49.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
49.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #s(approx (- lambda1 lambda2) lambda1)))))
51.5%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
41.0%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #s(approx (- lambda1 lambda2) lambda1)))))
52.8%
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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)))))
53.0%
(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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
47.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)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
Compiler

Compiled 8 829 to 6 003 computations (32% saved)

series117.0ms (0.7%)

Memory
8.9MiB live, 152.4MiB allocated; 25ms collecting garbage
Counts
68 → 345
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.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 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.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 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
#s(approx (cos phi2) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2))
#s(approx (sin phi2) phi2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
(*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(cos.f64 (-.f64 lambda1 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2))
(fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
Outputs
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (+ (* (cos lambda1) (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (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 lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* -1 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* 1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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 (* (cos lambda1) (cos lambda2)) #s(hole binary64 (cos lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* -1/2 (* (pow lambda1 2) (cos lambda2))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow lambda1 2) (cos lambda2))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (cos lambda2))) (* 1/24 (cos lambda2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (+ (* -1/6 (* (pow lambda1 2) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (* (sin lambda2) (sin phi1))) (* (pow lambda1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* 1/120 (* (pow lambda1 2) (* (cos phi2) (* (sin lambda2) (sin phi1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (* (sin lambda2) (sin phi1))) (* (pow lambda1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* 1/120 (* (cos phi2) (* (sin lambda2) (sin phi1))))))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (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 (- 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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (+ phi2 (* 1/2 (PI)))) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda1 (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI)))))) (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))) (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))) (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI)))))) (* -1/6 (* lambda1 (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))) (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))) (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (+ (* (cos lambda1) (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda1) (cos lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (+ phi2 (* 1/2 (PI)))) (sin (- lambda1 lambda2)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (+ phi2 (* 1/2 (PI))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (cos lambda2) #s(hole binary64 1))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 lambda2) #s(hole binary64 lambda2))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda2 (- (* 1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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 lambda1) (cos lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* -1/2 (* (pow lambda2 2) (cos lambda1))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* 1/24 (* (pow lambda2 2) (cos lambda1))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos lambda1))) (* 1/24 (cos lambda1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (+ (* -1/6 (* (pow lambda2 2) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (+ (* (cos phi2) (* (sin lambda1) (sin phi1))) (* (pow lambda2 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* 1/120 (* (pow lambda2 2) (* (cos phi2) (* (sin lambda1) (sin phi1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (+ (* (cos phi2) (* (sin lambda1) (sin phi1))) (* (pow lambda2 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* 1/120 (* (cos phi2) (* (sin lambda1) (sin phi1))))))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (neg lambda2) #s(hole binary64 (* -1 lambda2)))
#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 (- 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 (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI))))))) (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI)))))) (* -1/2 (* lambda2 (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))) (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI)))))) (* lambda2 (+ (* -1/2 (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI)))))) (* 1/6 (* lambda2 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI))))))))))) (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (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))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (sin lambda2) #s(hole binary64 (sin lambda2)))
#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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (+ lambda1 (* -1 lambda2))) (sin (+ phi2 (* 1/2 (PI))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (+ lambda1 (* -1 lambda2))) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1 (* phi1 (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))) (* -1/2 (sin phi2)))) (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* 1/120 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* 1/120 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* 1/120 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (+ (* 1/120 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* -1/5040 (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (* (sin lambda1) (sin lambda2))))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#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 (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 phi1))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow phi1 2)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* (sin phi2) (sin (* 1/2 (PI))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (* phi1 (- (* (cos (* 1/2 (PI))) (sin phi2)) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (* phi1 (- (+ (* -1/2 (* phi1 (* (sin phi2) (sin (* 1/2 (PI)))))) (* (cos (* 1/2 (PI))) (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (* phi1 (- (+ (* phi1 (+ (* -1/2 (* (sin phi2) (sin (* 1/2 (PI))))) (* phi1 (- (* -1/6 (* (cos (* 1/2 (PI))) (sin phi2))) (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))))))) (* (cos (* 1/2 (PI))) (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* (sin phi2) (sin (* 1/2 (PI))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (+ (* phi1 (* (cos (* 1/2 (PI))) (sin phi2))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (+ (* phi1 (+ (* -1/2 (* phi1 (* (sin phi2) (sin (* 1/2 (PI)))))) (* (cos (* 1/2 (PI))) (sin phi2)))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (+ (* phi1 (+ (* phi1 (+ (* -1/2 (* (sin phi2) (sin (* 1/2 (PI))))) (* -1/6 (* phi1 (* (cos (* 1/2 (PI))) (sin phi2)))))) (* (cos (* 1/2 (PI))) (sin phi2)))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi1 (cos (* 1/2 (PI)))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi1 (+ (cos (* 1/2 (PI))) (* -1/2 (* phi1 (sin (* 1/2 (PI))))))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi1 (+ (cos (* 1/2 (PI))) (* phi1 (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* phi1 (cos (* 1/2 (PI))))))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* -1/2 (* (pow phi1 2) (sin (* 1/2 (PI))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow phi1 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* 1/24 (* (pow phi1 2) (sin (* 1/2 (PI))))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow phi1 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin (* 1/2 (PI))))) (* 1/24 (sin (* 1/2 (PI)))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1/6 (pow phi1 3))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* (pow phi1 3) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* -1/6 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (* (cos phi1) (sin (* 1/2 (PI))))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1 (* (pow phi1 3) (- 1/6 (/ 1 (pow phi1 2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (* -1 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* phi2 (cos phi1)) (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* -1 (* phi2 (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))) (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))) (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* 1/24 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* 1/24 (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* 1/24 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (+ (* 1/24 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/720 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* (sin lambda1) (* (sin lambda2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* 1/24 (* (pow phi2 2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))) (* 1/24 (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/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))))
#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 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* phi2 (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2)))) (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* phi2 (+ (* -1/2 (* phi2 (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))) (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2))))) (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* phi2 (+ (* phi2 (+ (* -1/2 (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2)))) (* -1/6 (* phi2 (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2))))))) (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2))))) (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi2 (cos (* 1/2 (PI)))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi2 (+ (cos (* 1/2 (PI))) (* -1/2 (* phi2 (sin (* 1/2 (PI))))))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi2 (+ (cos (* 1/2 (PI))) (* phi2 (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* phi2 (cos (* 1/2 (PI))))))))))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (* 1/2 (PI))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (+ phi2 (* 1/2 (PI)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (* phi2 (- (* -1/6 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))))) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* -1/6 (* (pow phi2 2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (+ (* (cos (* 1/2 (PI))) (sin phi1)) (* (pow phi2 2) (+ (* -1/6 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* 1/120 (* (pow phi2 2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))))))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (+ (* (cos (* 1/2 (PI))) (sin phi1)) (* (pow phi2 2) (+ (* -1/6 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* 1/120 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (sin (+ phi2 (* 1/2 (PI))))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 phi2))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (* phi2 (+ 1 (* 1/2 (/ (PI) phi2))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (- lambda1 lambda2)) (sin (- (* 1/2 (PI)) (* -1 phi2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (- lambda1 lambda2)) (sin (- (* 1/2 (PI)) (* -1 phi2))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) (* -1 phi2)))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (* -1 (* phi2 (- (* -1/2 (/ (PI) phi2)) 1)))))
Calls

12 calls:

TimeVariablePointExpression
20.0ms
phi2
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (* (sin phi1) (cos phi2)) (sin phi1) (* (cos lambda1) (cos lambda2)) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (* (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin phi2) (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) (neg lambda2) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin (+ phi2 (/ (PI) 2))) (+ phi2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (* (cos phi1) (sin (/ (PI) 2))) (sin (/ (PI) 2)))
16.0ms
lambda1
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (* (sin phi1) (cos phi2)) (sin phi1) (* (cos lambda1) (cos lambda2)) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (* (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin phi2) (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) (neg lambda2) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin (+ phi2 (/ (PI) 2))) (+ phi2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (* (cos phi1) (sin (/ (PI) 2))) (sin (/ (PI) 2)))
13.0ms
phi1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (* (sin phi1) (cos phi2)) (sin phi1) (* (cos lambda1) (cos lambda2)) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (* (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin phi2) (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) (neg lambda2) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin (+ phi2 (/ (PI) 2))) (+ phi2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (* (cos phi1) (sin (/ (PI) 2))) (sin (/ (PI) 2)))
9.0ms
lambda2
@-inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (* (sin phi1) (cos phi2)) (sin phi1) (* (cos lambda1) (cos lambda2)) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (* (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin phi2) (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) (neg lambda2) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin (+ phi2 (/ (PI) 2))) (+ phi2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (* (cos phi1) (sin (/ (PI) 2))) (sin (/ (PI) 2)))
8.0ms
lambda1
@inf
((atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) lambda1 (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (cos phi2) phi2 (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (* (cos phi1) (sin phi2)) (cos phi1) phi1 (sin phi2) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (* (sin phi1) (cos phi2)) (sin phi1) (* (cos lambda1) (cos lambda2)) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (* (sin 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) (cos phi2) 1 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin phi2) (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) (neg lambda2) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (cos phi1) (sin phi2)) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) -1/2 (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (* (sin phi1) (cos phi2)) (sin phi1) (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (+ (* (* phi1 phi1) -1/6) 1) -1/6 (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin (+ phi2 (/ (PI) 2))) (+ phi2 (/ (PI) 2)) (/ (PI) 2) (PI) 2 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (cos (/ (PI) 2)) (* (cos phi1) (sin (/ (PI) 2))) (sin (/ (PI) 2)))

rewrite224.0ms (1.3%)

Memory
27.5MiB live, 210.1MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0151311925
0161911072
0829610779
Stop Event
iter-limit
node-limit
iter-limit
Counts
413 → 500
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
lambda1
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (cos.f64 phi1) (sin.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 (cos.f64 phi1) (sin.f64 phi2))
(cos.f64 phi1)
phi1
(sin.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 (sin.f64 phi1) (cos.f64 phi2))
(sin.f64 phi1)
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64)))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
#s(approx (cos phi2) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2))
#s(approx (sin phi2) phi2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
(*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(cos.f64 (-.f64 lambda1 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2))
(fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
(*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (- (* (cos phi1) (sin phi2)) (+ (* (cos lambda1) (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (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 lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* -1 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos lambda2) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* 1/6 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* -1/2 (* (cos lambda2) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* (cos lambda2) (* (cos phi2) (sin phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (cos lambda2) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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 (* (cos lambda1) (cos lambda2)) #s(hole binary64 (cos lambda2)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* -1/2 (* (pow lambda1 2) (cos lambda2))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow lambda1 2) (cos lambda2))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/2 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (cos lambda2))) (* 1/24 (cos lambda2)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (* (cos phi2) (* (sin lambda2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (+ (* -1/6 (* (pow lambda1 2) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* (cos phi2) (* (sin lambda2) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (* (sin lambda2) (sin phi1))) (* (pow lambda1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* 1/120 (* (pow lambda1 2) (* (cos phi2) (* (sin lambda2) (sin phi1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (* (sin lambda2) (sin phi1))) (* (pow lambda1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda2) (sin phi1)))) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (* (cos phi2) (* (sin lambda2) (sin phi1))))) (* 1/120 (* (cos phi2) (* (sin lambda2) (sin phi1))))))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (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 (- 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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (cos phi1) (sin phi2))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#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 (- 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 (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (+ phi2 (* 1/2 (PI)))) (sin (- lambda1 lambda2))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda1 (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI)))))) (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))) (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))) (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI)))))) (* -1/6 (* lambda1 (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))) (* (cos (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))) (* (sin (neg lambda2)) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* 1/2 (* lambda1 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda1 (- (* lambda1 (- (* -1/6 (* lambda1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2)))))) (* -1/2 (* (cos phi2) (* (cos (neg lambda2)) (sin phi1)))))) (* -1 (* (cos phi2) (* (sin phi1) (sin (neg lambda2))))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos phi2) (* (cos (neg lambda2)) (sin phi1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (+ (* (cos lambda1) (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (* (cos phi2) (sin phi1)))) (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda1) (cos lambda2))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* (cos phi2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (+ phi2 (* 1/2 (PI)))) (sin (- lambda1 lambda2)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (+ phi2 (* 1/2 (PI))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (neg (+ lambda2 (* -1 lambda1)))) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (neg (+ lambda2 (* -1 lambda1)))) (sin phi1))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (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 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 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)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (sin lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #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 (cos lambda2) #s(hole binary64 1))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #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 lambda2) #s(hole binary64 lambda2))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda2 (- (* 1/2 (* lambda2 (* (cos lambda1) (* (cos phi2) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* (cos lambda1) (* (cos phi2) (sin phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #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 lambda1) (cos lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* -1/2 (* (pow lambda2 2) (cos lambda1))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* 1/24 (* (pow lambda2 2) (cos lambda1))))))))
#s(approx (* (cos lambda1) (cos lambda2)) #s(hole binary64 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/2 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos lambda1))) (* 1/24 (cos lambda1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (+ (* -1/6 (* (pow lambda2 2) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi2) (* (sin lambda1) (sin phi1)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (+ (* (cos phi2) (* (sin lambda1) (sin phi1))) (* (pow lambda2 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* 1/120 (* (pow lambda2 2) (* (cos phi2) (* (sin lambda1) (sin phi1)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* lambda2 (+ (* (cos phi2) (* (sin lambda1) (sin phi1))) (* (pow lambda2 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin phi1)))) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* 1/120 (* (cos phi2) (* (sin lambda1) (sin phi1))))))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda2) (sin lambda1)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (cos phi1) (sin phi2)) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (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 phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (cos phi1) (sin phi2))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (neg lambda2) #s(hole binary64 (* -1 lambda2)))
#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 (- 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 (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI))))))) (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI)))))) (* -1/2 (* lambda2 (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))) (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI)))))) (* lambda2 (+ (* -1/2 (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI)))))) (* 1/6 (* lambda2 (* (cos lambda1) (sin (+ phi2 (* 1/2 (PI))))))))))) (* (sin lambda1) (sin (+ phi2 (* 1/2 (PI))))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* -1 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (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))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (+ (* lambda2 (- (* lambda2 (- (* 1/6 (* lambda2 (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* -1/2 (* (cos lambda1) (* (cos phi2) (sin phi1)))))) (* (cos phi2) (* (sin lambda1) (sin phi1))))) (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos lambda1) (* (cos phi2) (sin phi1))))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (sin lambda2) #s(hole binary64 (sin lambda2)))
#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 phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (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 (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (+ lambda1 (* -1 lambda2))) (sin (+ phi2 (* 1/2 (PI))))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (+ lambda1 (* -1 lambda2))) (sin (+ phi2 (* 1/2 (PI)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos phi2) (* (cos (+ lambda1 (* -1 lambda2))) (sin phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1 (* phi1 (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))) (* -1/2 (sin phi2)))) (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (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 (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* 1/120 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* 1/120 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (* phi1 (+ (* (cos lambda1) (* (cos lambda2) (cos phi2))) (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* 1/120 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (+ (* 1/120 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (cos lambda1) (* (cos lambda2) (cos phi2)))) (* -1/5040 (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (cos phi2))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* -1/6 (* (pow phi1 2) (cos phi2)))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* 1/120 (* (pow phi1 2) (cos phi2)))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* phi1 (+ (cos phi2) (* (pow phi1 2) (+ (* -1/6 (cos phi2)) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (cos phi2))) (* 1/120 (cos phi2))))))))))
#s(approx (sin phi1) #s(hole binary64 phi1))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* 1/120 (pow phi1 2)) 1/6))))))
#s(approx (sin phi1) #s(hole binary64 (* phi1 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/120 (* -1/5040 (pow phi1 2)))) 1/6))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (+ (* -1/6 (* (pow phi1 2) (* (cos phi2) (* (sin lambda1) (sin lambda2))))) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* 1/120 (* (pow phi1 2) (* (cos phi2) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* phi1 (+ (* (cos phi2) (* (sin lambda1) (sin lambda2))) (* (pow phi1 2) (+ (* -1/6 (* (cos phi2) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (+ (* -1/5040 (* (pow phi1 2) (* (cos phi2) (* (sin lambda1) (sin lambda2))))) (* 1/120 (* (cos phi2) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (sin phi2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* -1 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* -1/2 (* phi1 (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (sin phi2) (* phi1 (- (* phi1 (+ (* -1/2 (sin phi2)) (* 1/6 (* phi1 (* (cos phi2) (cos (- lambda1 lambda2))))))) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#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 (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 phi1))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* phi1 (+ 1 (* -1/6 (pow phi1 2))))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow phi1 2)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* (sin phi2) (sin (* 1/2 (PI))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (* phi1 (- (* (cos (* 1/2 (PI))) (sin phi2)) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (* phi1 (- (+ (* -1/2 (* phi1 (* (sin phi2) (sin (* 1/2 (PI)))))) (* (cos (* 1/2 (PI))) (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (* phi1 (- (+ (* phi1 (+ (* -1/2 (* (sin phi2) (sin (* 1/2 (PI))))) (* phi1 (- (* -1/6 (* (cos (* 1/2 (PI))) (sin phi2))) (* -1/6 (* (cos phi2) (cos (- lambda1 lambda2)))))))) (* (cos (* 1/2 (PI))) (sin phi2))) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* (sin phi2) (sin (* 1/2 (PI))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (+ (* phi1 (* (cos (* 1/2 (PI))) (sin phi2))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (+ (* phi1 (+ (* -1/2 (* phi1 (* (sin phi2) (sin (* 1/2 (PI)))))) (* (cos (* 1/2 (PI))) (sin phi2)))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (+ (* phi1 (+ (* phi1 (+ (* -1/2 (* (sin phi2) (sin (* 1/2 (PI))))) (* -1/6 (* phi1 (* (cos (* 1/2 (PI))) (sin phi2)))))) (* (cos (* 1/2 (PI))) (sin phi2)))) (* (sin phi2) (sin (* 1/2 (PI)))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi1 (cos (* 1/2 (PI)))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi1 (+ (cos (* 1/2 (PI))) (* -1/2 (* phi1 (sin (* 1/2 (PI))))))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi1 (+ (cos (* 1/2 (PI))) (* phi1 (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* phi1 (cos (* 1/2 (PI))))))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* -1/2 (* (pow phi1 2) (sin (* 1/2 (PI))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow phi1 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* 1/24 (* (pow phi1 2) (sin (* 1/2 (PI))))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow phi1 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* (pow phi1 2) (+ (* -1/720 (* (pow phi1 2) (sin (* 1/2 (PI))))) (* 1/24 (sin (* 1/2 (PI)))))))))))
#s(approx (* (cos phi1) (sin phi2)) #s(hole binary64 (* (cos phi1) (sin phi2))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (* (cos phi2) (sin phi1))))
#s(approx (sin phi1) #s(hole binary64 (sin phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1/6 (pow phi1 3))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* (pow phi1 3) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* -1/6 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/6))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* (sin phi2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))))
#s(approx (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) #s(hole binary64 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) #s(hole binary64 (* (cos phi1) (sin (* 1/2 (PI))))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) #s(hole binary64 (* -1 (* (pow phi1 3) (- 1/6 (/ 1 (pow phi1 2)))))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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)) (* (cos lambda1) (sin lambda2))) (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 (cos phi2) #s(hole binary64 1))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (* -1 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* phi2 (cos phi1)) (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* -1 (* phi2 (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))) (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))) (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))
#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 phi2) #s(hole binary64 phi2))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* -1/6 (pow phi2 2))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* 1/120 (pow phi2 2)) 1/6))))))
#s(approx (sin phi2) #s(hole binary64 (* phi2 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/120 (* -1/5040 (pow phi2 2)))) 1/6))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* 1/24 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* 1/24 (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) #s(hole binary64 (+ (* (cos lambda1) (* (cos lambda2) (sin phi1))) (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* 1/24 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (+ (* 1/24 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* -1/720 (* (cos lambda1) (* (cos lambda2) (sin phi1)))) (* -1/720 (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (sin phi1)))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* -1/2 (* (pow phi2 2) (sin phi1))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* 1/24 (* (pow phi2 2) (sin phi1))))))))
#s(approx (* (sin phi1) (cos phi2)) #s(hole binary64 (+ (sin phi1) (* (pow phi2 2) (+ (* -1/2 (sin phi1)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin phi1))) (* 1/24 (sin phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (* (sin lambda1) (* (sin lambda2) (sin phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* 1/24 (* (pow phi2 2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) #s(hole binary64 (+ (* (sin lambda1) (* (sin lambda2) (sin phi1))) (* (pow phi2 2) (+ (* -1/2 (* (sin lambda1) (* (sin lambda2) (sin phi1)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (* (sin lambda1) (* (sin lambda2) (sin phi1))))) (* 1/24 (* (sin lambda1) (* (sin lambda2) (sin phi1)))))))))))
#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 (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (cos phi1)) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (cos phi1) (* phi2 (- (* -1/6 (* phi2 (cos phi1))) (* -1/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))))
#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 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* phi2 (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2)))) (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* phi2 (+ (* -1/2 (* phi2 (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))) (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2))))) (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (+ (* phi2 (+ (* phi2 (+ (* -1/2 (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2)))) (* -1/6 (* phi2 (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2))))))) (* (cos (* 1/2 (PI))) (sin (- lambda1 lambda2))))) (* (sin (* 1/2 (PI))) (sin (- lambda1 lambda2))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi2 (cos (* 1/2 (PI)))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi2 (+ (cos (* 1/2 (PI))) (* -1/2 (* phi2 (sin (* 1/2 (PI))))))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* phi2 (+ (cos (* 1/2 (PI))) (* phi2 (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* phi2 (cos (* 1/2 (PI))))))))))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (* 1/2 (PI))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (+ phi2 (* 1/2 (PI)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (* -1 (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (* 1/2 (* phi2 (* (cos (- lambda1 lambda2)) (sin phi1)))) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(hole binary64 (- (* phi2 (+ (* phi2 (- (* -1/6 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* -1/2 (* (cos (- lambda1 lambda2)) (sin phi1))))) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* (cos (- lambda1 lambda2)) (sin phi1)))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* -1/6 (* (pow phi2 2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (+ (* (cos (* 1/2 (PI))) (sin phi1)) (* (pow phi2 2) (+ (* -1/6 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* 1/120 (* (pow phi2 2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))))))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) #s(hole binary64 (* phi2 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (+ (* (cos (* 1/2 (PI))) (sin phi1)) (* (pow phi2 2) (+ (* -1/6 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))) (* (pow phi2 2) (+ (* -1/5040 (* (pow phi2 2) (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1))))) (* 1/120 (+ (* (cos phi1) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin phi1)))))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (sin phi2) #s(hole binary64 (sin phi2)))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (sin (+ phi2 (* 1/2 (PI))))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 phi2))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (* phi2 (+ 1 (* 1/2 (/ (PI) phi2))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (sin (- lambda1 lambda2)) (sin (- (* 1/2 (PI)) (* -1 phi2)))) (- (* (cos phi1) (sin phi2)) (* (cos phi2) (* (cos (- lambda1 lambda2)) (sin phi1)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) #s(hole binary64 (* (sin (- lambda1 lambda2)) (sin (- (* 1/2 (PI)) (* -1 phi2))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) (* -1 phi2)))))
#s(approx (+ phi2 (/ (PI) 2)) #s(hole binary64 (* -1 (* phi2 (- (* -1/2 (/ (PI) phi2)) 1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(sin.f64 lambda1)
lambda1
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(sin.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(fma.f64 (sin.f64 phi2) #s(literal 0 binary64) (*.f64 (cos.f64 phi2) #s(literal 1 binary64)))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi2))
(cos.f64 phi2)
(+.f64 (*.f64 (sin.f64 phi2) #s(literal 0 binary64)) (*.f64 (cos.f64 phi2) #s(literal 1 binary64)))
phi2
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (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 (*.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 (cos.f64 phi1) (sin.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 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(literal 3 binary64)) (pow.f64 (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)))) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (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 (*.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 (cos.f64 phi1) (sin.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 (cos.f64 phi1) (sin.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 (cos.f64 phi1) (sin.f64 phi2))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (sin.f64 phi1) #s(literal 0 binary64))) (*.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))) (-.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (*.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))))))
(fma.f64 (sin.f64 phi1) #s(literal 0 binary64) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 phi1)) #s(literal 1 binary64)))
(cos.f64 (neg.f64 phi1))
(cos.f64 phi1)
(+.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))
phi1
(sin.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)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) #s(literal 3 binary64))) (fma.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 (*.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)))))))
(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 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (neg.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))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64))
(sin.f64 phi1)
(*.f64 (cos.f64 lambda1) (cos.f64 lambda2))
(/.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 2 binary64))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))) #s(literal 2 binary64))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (sin (+ phi2 (/ (PI) 2))) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (sin (+ phi2 (/ (PI) 2))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 lambda1 lambda2))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))
(/.f64 (-.f64 (pow.f64 lambda1 #s(literal 3 binary64)) (pow.f64 lambda2 #s(literal 3 binary64))) (fma.f64 lambda1 lambda1 (fma.f64 lambda2 lambda2 (*.f64 lambda1 lambda2))))
(-.f64 lambda1 lambda2)
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2))
#s(approx (sin phi2) phi2)
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)) phi2)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)) phi2))) #s(literal 2 binary64))
(sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
(neg.f64 lambda2)
(/.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))) (*.f64 (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (fma.f64 (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(fma.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (neg.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 (pow.f64 phi1 #s(literal 1 binary64)) (pow.f64 phi1 #s(literal 1 binary64)))
(*.f64 (fabs.f64 phi1) (fabs.f64 phi1))
(*.f64 (neg.f64 phi1) (neg.f64 phi1))
(*.f64 phi1 phi1)
(pow.f64 phi1 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 phi1) #s(literal 2 binary64)))
#s(literal -1/2 binary64)
(*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2))
#s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1))
(*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64)) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.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)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(fma.f64 (sin.f64 phi2) #s(literal 0 binary64) (*.f64 (cos.f64 phi2) #s(literal 1 binary64)))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi2))
(cos.f64 phi2)
(+.f64 (*.f64 (sin.f64 phi2) #s(literal 0 binary64)) (*.f64 (cos.f64 phi2) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 phi2 phi2) (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (-.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 phi2 #s(literal 3 binary64)) (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 phi2 phi2 (-.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))))
(+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))
(/.f64 (neg.f64 (PI.f64)) #s(literal -2 binary64))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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)))))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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))))
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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)))))))
(fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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))))
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (sin.f64 phi1) #s(literal 0 binary64))) (*.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))) (-.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (*.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))))))
(fma.f64 (sin.f64 phi1) #s(literal 0 binary64) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 phi1)) #s(literal 1 binary64)))
(cos.f64 (neg.f64 phi1))
(cos.f64 phi1)
(+.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))
#s(literal 0 binary64)
(*.f64 (cos.f64 phi1) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (atan2 (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 lambda1 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (*.f64 #s(literal -1 binary64) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 lambda1 (-.f64 (cos.f64 lambda2) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda1 (sin.f64 lambda2))))) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 #s(literal 1/2 binary64) (sin.f64 lambda2)))))) (sin.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 lambda1 (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2))))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/6 binary64) (cos.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2))))))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/6 binary64) (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2)) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda2)))))))))
#s(approx (sin lambda1) lambda1)
#s(approx (sin lambda1) (*.f64 lambda1 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda1 lambda1)))))
#s(approx (sin lambda1) (*.f64 lambda1 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda1 lambda1) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64))))))
#s(approx (sin lambda1) (*.f64 lambda1 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda1 lambda1) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1)))) #s(literal 1/6 binary64))))))
#s(approx lambda1 lambda1)
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (-.f64 (sin.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)))))
#s(approx (* (cos lambda1) (sin lambda2)) (+.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda2) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)))))))
#s(approx (* (cos lambda1) (sin lambda2)) (+.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) (*.f64 #s(literal 1/24 binary64) (sin.f64 lambda2))))))))
#s(approx (cos lambda1) #s(literal 1 binary64))
#s(approx (cos lambda1) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda1 lambda1))))
#s(approx (cos lambda1) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda1 lambda1) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)))))
#s(approx (cos lambda1) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda1 lambda1) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1)))) #s(literal 1/2 binary64)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (fma.f64 lambda1 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (fma.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal 1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2))
#s(approx (* (cos lambda1) (cos lambda2)) (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2)))))
#s(approx (* (cos lambda1) (cos lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/2 binary64) (cos.f64 lambda2) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2)))))))
#s(approx (* (cos lambda1) (cos lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/2 binary64) (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2)) (*.f64 #s(literal 1/24 binary64) (cos.f64 lambda2))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda1 (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda1 (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda1 (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda1 (-.f64 (sin.f64 lambda2) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2))))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2))))))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) (*.f64 #s(literal 1/120 binary64) (sin.f64 lambda2)))))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (neg.f64 (sin.f64 lambda2)) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (cos.f64 lambda2)))))))))
#s(approx (- lambda1 lambda2) (*.f64 #s(literal -1 binary64) lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda1 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 #s(literal -1 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 lambda1 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 lambda1 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))) (*.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))))))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1 binary64) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 lambda1 (cos.f64 lambda2))) (neg.f64 (sin.f64 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (-.f64 (*.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (cos.f64 lambda2) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))) (neg.f64 (sin.f64 lambda2))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (*.f64 (cos.f64 lambda2) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (*.f64 (cos.f64 lambda2) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda1 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda1 (fma.f64 lambda1 (fma.f64 #s(literal -1/6 binary64) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
#s(approx (cos lambda1) (cos.f64 lambda1))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))
#s(approx (* (cos lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) lambda1)
#s(approx (- lambda1 lambda2) (*.f64 lambda1 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 lambda2 lambda1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1)))))
#s(approx (- lambda1 lambda2) (*.f64 #s(literal -1 binary64) (*.f64 lambda1 (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1)))) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1)))) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda2 (*.f64 #s(literal -1 binary64) lambda1))) (sin.f64 phi1)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 #s(literal -1 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda2 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda2 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1 binary64) (*.f64 lambda2 (cos.f64 lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda1) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (cos.f64 lambda1))))) (cos.f64 lambda1)))))
#s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)))))
#s(approx (* (sin lambda1) (cos lambda2)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda1) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)))))))
#s(approx (* (sin lambda1) (cos lambda2)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) (*.f64 #s(literal 1/24 binary64) (sin.f64 lambda1))))))))
#s(approx (cos lambda2) #s(literal 1 binary64))
#s(approx (cos lambda2) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 lambda2))))
#s(approx (cos lambda2) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda2 lambda2)) #s(literal 1/2 binary64)))))
#s(approx (cos lambda2) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 (*.f64 lambda2 lambda2) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (*.f64 lambda2 lambda2)))) #s(literal 1/2 binary64)))))
#s(approx lambda2 lambda2)
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 lambda2 (cos.f64 lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 lambda2 (-.f64 (cos.f64 lambda1) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1))))))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 lambda2 (+.f64 (cos.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/6 binary64) (cos.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1))))))))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 lambda2 (+.f64 (cos.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/6 binary64) (cos.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda1)))))))))
#s(approx (sin lambda2) lambda2)
#s(approx (sin lambda2) (*.f64 lambda2 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda2 lambda2)))))
#s(approx (sin lambda2) (*.f64 lambda2 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda2 lambda2)) #s(literal 1/6 binary64))))))
#s(approx (sin lambda2) (*.f64 lambda2 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 (*.f64 lambda2 lambda2) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda2 lambda2)))) #s(literal 1/6 binary64))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (fma.f64 lambda2 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (fma.f64 lambda2 (fma.f64 lambda2 (fma.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 lambda2 (fma.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1))
#s(approx (* (cos lambda1) (cos lambda2)) (-.f64 (cos.f64 lambda1) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)))))
#s(approx (* (cos lambda1) (cos lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/2 binary64) (cos.f64 lambda1) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)))))))
#s(approx (* (cos lambda1) (cos lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/2 binary64) (cos.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)) (*.f64 #s(literal 1/24 binary64) (cos.f64 lambda1))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda2 (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda2 (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 lambda2 (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))))))))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda2 (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1))))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda2 (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1))))))))
#s(approx (* (sin lambda2) (sin lambda1)) (*.f64 lambda2 (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda1) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) (*.f64 #s(literal 1/120 binary64) (sin.f64 lambda1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 #s(literal -1 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda2 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda2 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 lambda1))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1 binary64) (*.f64 lambda2 (cos.f64 lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda1) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (cos.f64 lambda1)))))))))
#s(approx (- lambda1 lambda2) (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2)))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda2 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda2 (fma.f64 lambda2 (fma.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (neg lambda2) (*.f64 #s(literal -1 binary64) lambda2))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 lambda2 (fma.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))))))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (fma.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/6 binary64) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 #s(literal 1 binary64) (sin.f64 lambda1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (sin.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 #s(literal -1 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (*.f64 (sin.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda2 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))) (*.f64 (sin.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 lambda2 (fma.f64 #s(literal -1 binary64) (*.f64 (cos.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 lambda2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))))) (*.f64 (sin.f64 lambda1) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 #s(literal -1 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda2 (fma.f64 #s(literal 1/2 binary64) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (fma.f64 lambda2 (fma.f64 lambda2 (fma.f64 #s(literal 1/6 binary64) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (*.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
#s(approx (cos lambda2) (cos.f64 lambda2))
#s(approx (sin lambda2) (sin.f64 lambda2))
#s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))))
#s(approx (- lambda1 lambda2) (*.f64 #s(literal -1 binary64) (*.f64 lambda2 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 lambda1 lambda2))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 phi1))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (sin.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (+.f64 lambda1 (*.f64 #s(literal -1 binary64) lambda2))) (sin.f64 phi1)))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (+.f64 (sin.f64 phi2) (*.f64 phi1 (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 phi1 (sin.f64 phi2))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (+.f64 (sin.f64 phi2) (*.f64 phi1 (-.f64 (*.f64 phi1 (fma.f64 #s(literal -1 binary64) (*.f64 phi1 (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (*.f64 #s(literal -1/2 binary64) (sin.f64 phi2)))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi1 phi1) (sin.f64 phi2)))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+.f64 (sin.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/2 binary64) (sin.f64 phi2) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi1 phi1) (sin.f64 phi2)))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (+.f64 (sin.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/2 binary64) (sin.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi1 phi1) (sin.f64 phi2)) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi2))))))))
#s(approx (cos phi1) #s(literal 1 binary64))
#s(approx (cos phi1) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi1 phi1))))
#s(approx (cos phi1) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)))))
#s(approx (cos phi1) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) (-.f64 (*.f64 (*.f64 phi1 phi1) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1)))) #s(literal 1/2 binary64)))))
#s(approx phi1 phi1)
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 phi1 (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 phi1 (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 phi1 (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 phi1 (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 #s(literal -1/5040 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))))))))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 phi1 (cos.f64 phi2)))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 phi1 (-.f64 (cos.f64 phi2) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 phi1 phi1) (cos.f64 phi2))))))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 phi1 (+.f64 (cos.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (cos.f64 phi2) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 phi1 phi1) (cos.f64 phi2))))))))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 phi1 (+.f64 (cos.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (cos.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 phi1 phi1) (cos.f64 phi2)) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi2)))))))))
#s(approx (sin phi1) phi1)
#s(approx (sin phi1) (*.f64 phi1 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 phi1 phi1)))))
#s(approx (sin phi1) (*.f64 phi1 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64))))))
#s(approx (sin phi1) (*.f64 phi1 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) (-.f64 (*.f64 (*.f64 phi1 phi1) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1)))) #s(literal 1/6 binary64))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 phi1 (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 phi1 (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 phi1 (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (*.f64 phi1 (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 phi1 (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (*.f64 phi1 (fma.f64 phi1 (fma.f64 #s(literal -1/2 binary64) (sin.f64 phi2) (*.f64 #s(literal 1/6 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi1 phi1))))
#s(approx (* phi1 phi1) (*.f64 phi1 phi1))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 phi1 (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 phi1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 phi1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 #s(literal 1/120 binary64) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 phi1 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 phi1 phi1)))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 phi1 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi1 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi1 (-.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 phi1 (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi1 (-.f64 (fma.f64 phi1 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 phi1 (fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2)) (*.f64 #s(literal 1/6 binary64) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (fma.f64 phi1 (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2)) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (fma.f64 phi1 (fma.f64 #s(literal -1/2 binary64) (*.f64 phi1 (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2))) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (fma.f64 phi1 (fma.f64 phi1 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 #s(literal -1/6 binary64) (*.f64 phi1 (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2))))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi2))) (*.f64 (sin.f64 phi2) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (cos phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (cos phi1) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi1 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (cos phi1) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi1 (-.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))))
#s(approx (cos phi1) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi1 (+.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi1 (fma.f64 #s(literal -1/2 binary64) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1/6 binary64) (*.f64 phi1 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi1 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/2 binary64) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi1 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/2 binary64) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (*.f64 phi1 phi1) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi1 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))) (*.f64 #s(literal 1/24 binary64) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
#s(approx (sin phi1) (sin.f64 phi1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 phi1 phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (*.f64 phi1 phi1) (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 #s(literal -1/6 binary64) (pow.f64 phi1 #s(literal 3 binary64))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 (pow.f64 phi1 #s(literal 3 binary64)) (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/6 binary64))))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) (*.f64 #s(literal -1/6 binary64) (*.f64 phi1 phi1)))
#s(approx (+ (* (* phi1 phi1) -1/6) 1) (*.f64 (*.f64 phi1 phi1) (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/6 binary64))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))))
#s(approx (cos phi1) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))
#s(approx (* (cos phi1) (sin (/ (PI) 2))) (*.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 phi1 #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (pow.f64 phi1 #s(literal -2 binary64))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (-.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi2 phi2) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (-.f64 (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi2 phi2) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (-.f64 (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi2 phi2) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))) (*.f64 #s(literal 1/24 binary64) (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
#s(approx (sin (+ phi2 (/ (PI) 2))) #s(literal 1 binary64))
#s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi2 phi2) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi2 phi2) (-.f64 (*.f64 (*.f64 phi2 phi2) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (*.f64 phi2 phi2)))) #s(literal 1/2 binary64)))))
#s(approx phi2 phi2)
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (*.f64 phi2 (-.f64 (cos.f64 phi1) (*.f64 #s(literal 1 binary64) (*.f64 phi2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))
#s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (-.f64 (*.f64 phi2 (+.f64 (cos.f64 phi1) (*.f64 phi2 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 phi2 (cos.f64 phi1))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (cos.f64 phi1)))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (-.f64 (cos.f64 phi1) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 phi1))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (+.f64 (cos.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/6 binary64) (cos.f64 phi1) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 phi1))))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (+.f64 (cos.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/6 binary64) (cos.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 phi1)) (*.f64 #s(literal 1/120 binary64) (cos.f64 phi1)))))))))
#s(approx (sin phi2) phi2)
#s(approx (sin phi2) (*.f64 phi2 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 phi2 phi2)))))
#s(approx (sin phi2) (*.f64 phi2 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi2 phi2) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi2 phi2)) #s(literal 1/6 binary64))))))
#s(approx (sin phi2) (*.f64 phi2 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi2 phi2) (-.f64 (*.f64 (*.f64 phi2 phi2) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 phi2 phi2)))) #s(literal 1/6 binary64))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal 1/24 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))))))))
#s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal 1/24 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (fma.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal -1/720 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))))))))))
#s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1))
#s(approx (* (sin phi1) (cos phi2)) (-.f64 (sin.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))))
#s(approx (* (sin phi1) (cos phi2)) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (sin.f64 phi1) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))))))
#s(approx (* (sin phi1) (cos phi2)) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) (*.f64 #s(literal 1/24 binary64) (sin.f64 phi1))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))) (fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1))))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))))))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi2 (-.f64 (cos.f64 phi1) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))) (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi2 (+.f64 (cos.f64 phi1) (*.f64 phi2 (fma.f64 #s(literal -1/6 binary64) (*.f64 phi2 (cos.f64 phi1)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))))
#s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 phi2 (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 phi2 (fma.f64 #s(literal -1/2 binary64) (*.f64 phi2 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (fma.f64 phi2 (fma.f64 phi2 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 #s(literal -1/6 binary64) (*.f64 phi2 (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 (-.f64 lambda1 lambda2)))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi2 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi2 (-.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi2 (+.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 phi2 (fma.f64 #s(literal -1/2 binary64) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 #s(literal -1/6 binary64) (*.f64 phi2 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))))))))
#s(approx (+ phi2 (/ (PI) 2)) (*.f64 #s(literal 1/2 binary64) (PI.f64)))
#s(approx (+ phi2 (/ (PI) 2)) (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi2 (fma.f64 #s(literal 1/2 binary64) (*.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 phi2 (fma.f64 phi2 (fma.f64 #s(literal -1/6 binary64) (*.f64 phi2 (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 phi2 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (fma.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/6 binary64) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 phi2 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))))))))))
#s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (*.f64 phi2 (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (fma.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/6 binary64) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))) (*.f64 (*.f64 phi2 phi2) (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 phi2 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 #s(literal 1/120 binary64) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1))))))))))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (cos.f64 phi2))
#s(approx (sin phi2) (sin.f64 phi2))
#s(approx (sin (+ phi2 (/ (PI) 2))) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))
#s(approx (+ phi2 (/ (PI) 2)) phi2)
#s(approx (+ phi2 (/ (PI) 2)) (*.f64 phi2 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (PI.f64) phi2)))))
#s(approx (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (*.f64 #s(literal 1 binary64) phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
#s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (*.f64 #s(literal 1 binary64) phi2)))))
#s(approx (sin (+ phi2 (/ (PI) 2))) (sin.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (*.f64 #s(literal 1 binary64) phi2))))
#s(approx (+ phi2 (/ (PI) 2)) (*.f64 #s(literal -1 binary64) (*.f64 phi2 (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (PI.f64) phi2)) #s(literal 1 binary64)))))

eval159.0ms (0.9%)

Memory
-10.0MiB live, 145.0MiB allocated; 30ms collecting garbage
Compiler

Compiled 43 082 to 3 509 computations (91.9% saved)

prune246.0ms (1.4%)

Memory
-41.7MiB live, 241.5MiB allocated; 23ms collecting garbage
Pruning

129 alts after pruning (125 fresh and 4 done)

PrunedKeptTotal
New80428832
Fresh1097107
Picked415
Done033
Total818129947
Accuracy
99.9%
Counts
947 → 129
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
91.2%
(atan2.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
76.2%
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (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)))))
84.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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)))))
99.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (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 (*.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 (cos.f64 phi1) (sin.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)))))))
78.5%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (*.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))))) (sin.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))))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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))))))
79.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
73.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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))))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
99.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64))) (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)))))))))
57.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
60.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
74.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
57.2%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
59.6%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
81.0%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
80.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
69.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
69.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
70.1%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
80.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #s(approx (- lambda1 lambda2) lambda1)))))
70.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
58.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
58.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
72.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
80.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
59.8%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
80.7%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
72.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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)))))
60.6%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
58.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
58.9%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
58.3%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
58.0%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
74.4%
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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)))))
81.2%
(atan2.f64 (*.f64 (-.f64 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
37.4%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
24.7%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
16.8%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
15.0%
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
47.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
41.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
46.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
31.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
33.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
13.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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)))))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
76.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
81.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
70.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
60.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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
49.5%
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
60.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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
68.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
56.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
61.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
46.0%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
49.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
28.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
68.2%
(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)) (cos.f64 (-.f64 lambda1 lambda2)))))
56.2%
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
61.6%
(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)) (cos.f64 lambda2)))))
49.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
70.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
70.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
48.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
52.2%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
32.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
33.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
39.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
29.6%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.3%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
38.9%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
46.4%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
49.7%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
33.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
48.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
33.5%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
30.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
30.8%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
30.1%
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
67.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
63.1%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)))))
46.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
29.2%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
26.8%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
40.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)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
51.2%
(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)) (cos.f64 lambda2)))))
25.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
34.8%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
35.0%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
24.8%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.6%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
39.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)) (cos.f64 lambda2)))))
36.4%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.5%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
21.7%
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
29.9%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
29.3%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
25.5%
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
46.8%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
53.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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
55.7%
(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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
61.9%
(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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
42.6%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
61.4%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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)))))
49.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
49.9%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #s(approx (- lambda1 lambda2) lambda1)))))
51.5%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
41.0%
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #s(approx (- lambda1 lambda2) lambda1)))))
52.8%
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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)))))
37.6%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
27.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
30.9%
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
53.0%
(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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
47.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)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
Compiler

Compiled 12 688 to 4 361 computations (65.6% saved)

regimes345.0ms (2%)

Memory
41.8MiB live, 368.2MiB allocated; 38ms collecting garbage
Counts
192 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) 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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.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 (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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64)) (*.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)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (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 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (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 (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 (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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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))))))
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (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 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (*.f64 (*.f64 (sin.f64 phi1) #s(literal 0 binary64)) (*.f64 (cos.f64 phi1) #s(literal 1 binary64)))))) (sin.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))))))
(atan2.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) #s(literal 3 binary64))) (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)))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (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 (*.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 (cos.f64 phi1) (sin.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)))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.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))))))
Calls

6 calls:

66.0ms
phi1
62.0ms
lambda1
58.0ms
lambda2
55.0ms
(-.f64 lambda1 lambda2)
49.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
99.8%1(-.f64 lambda1 lambda2)
99.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)))))
99.8%1lambda1
99.8%1lambda2
99.8%1phi1
99.8%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes1.1s (6%)

Memory
-162.4MiB live, 534.9MiB allocated; 1.1s collecting garbage
Counts
185 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) 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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.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 (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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64)) (*.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)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (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 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (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 (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 (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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) #s(literal 2 binary64)) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(literal 2 binary64))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Calls

6 calls:

99.0ms
lambda1
57.0ms
phi1
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)))))
48.0ms
phi2
47.0ms
(-.f64 lambda1 lambda2)
Results
AccuracySegmentsBranch
99.8%1(-.f64 lambda1 lambda2)
99.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)))))
99.8%1lambda1
99.8%1lambda2
99.8%1phi1
99.8%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes303.0ms (1.7%)

Memory
12.0MiB live, 482.6MiB allocated; 37ms collecting garbage
Counts
183 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) 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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.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 (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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64)) (*.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)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (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 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (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 (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 (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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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:

57.0ms
(-.f64 lambda1 lambda2)
49.0ms
phi1
48.0ms
lambda2
47.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)))))
47.0ms
phi2
Results
AccuracySegmentsBranch
99.8%1(-.f64 lambda1 lambda2)
99.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)))))
99.8%1lambda1
99.8%1lambda2
99.8%1phi1
99.8%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes311.0ms (1.8%)

Memory
-24.4MiB live, 540.6MiB allocated; 53ms collecting garbage
Counts
181 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) 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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.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 (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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64)) (*.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)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (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 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Calls

6 calls:

51.0ms
lambda2
50.0ms
phi1
50.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)))))
49.0ms
lambda1
48.0ms
phi2
Results
AccuracySegmentsBranch
99.8%1(-.f64 lambda1 lambda2)
99.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)))))
99.8%1lambda1
99.8%1lambda2
99.8%1phi1
99.8%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes301.0ms (1.7%)

Memory
21.2MiB live, 504.5MiB allocated; 48ms collecting garbage
Counts
179 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 (cos.f64 phi1) (sin.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (*.f64 (cos.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64))) (sin.f64 phi1)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 #s(approx (- lambda1 lambda2) lambda1) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 #s(approx (- lambda1 lambda2) 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 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) #s(literal 2 binary64)) (*.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 (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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) (-.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 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64)) (*.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)) (*.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)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 (PI.f64)) (*.f64 (cos.f64 lambda2) (sin.f64 (PI.f64)))))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (*.f64 #s(literal -1 binary64) (fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 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)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 lambda2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))))) (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 #s(approx (* (sin lambda1) (cos lambda2)) (sin.f64 lambda1)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 #s(approx (* (cos phi1) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 #s(approx (* (cos lambda1) (cos lambda2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1 (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 #s(approx (cos lambda1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64))) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) #s(literal 1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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)))))
Calls

6 calls:

59.0ms
phi1
49.0ms
lambda2
48.0ms
lambda1
47.0ms
(-.f64 lambda1 lambda2)
45.0ms
phi2
Results
AccuracySegmentsBranch
91.2%1(-.f64 lambda1 lambda2)
91.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)))))
91.2%1lambda1
91.2%1lambda2
91.2%1phi1
91.2%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes249.0ms (1.4%)

Memory
-10.2MiB live, 456.1MiB allocated; 49ms collecting garbage
Counts
144 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #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 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.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 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
Calls

6 calls:

47.0ms
lambda1
46.0ms
(-.f64 lambda1 lambda2)
39.0ms
lambda2
37.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)))))
36.0ms
phi2
Results
AccuracySegmentsBranch
84.8%1(-.f64 lambda1 lambda2)
91.3%3lambda1
90.6%3phi1
84.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)))))
84.8%1phi2
91.3%3lambda2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes94.0ms (0.5%)

Memory
25.5MiB live, 121.4MiB allocated; 23ms collecting garbage
Counts
141 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) #s(approx (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1)))) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
Calls

2 calls:

51.0ms
lambda1
36.0ms
lambda2
Results
AccuracySegmentsBranch
84.8%1lambda1
91.3%3lambda2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes46.0ms (0.3%)

Memory
-26.5MiB live, 67.1MiB allocated; 6ms collecting garbage
Counts
140 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
(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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 lambda2) (sin.f64 phi1)) (cos.f64 phi2)))))
Calls

1 calls:

38.0ms
lambda2
Results
AccuracySegmentsBranch
91.3%3lambda2
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes78.0ms (0.4%)

Memory
23.9MiB live, 121.5MiB allocated; 6ms collecting garbage
Counts
139 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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)))))
Calls

2 calls:

36.0ms
phi1
36.0ms
lambda2
Results
AccuracySegmentsBranch
90.6%3phi1
84.8%1lambda2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes42.0ms (0.2%)

Memory
21.1MiB live, 66.0MiB allocated; 3ms collecting garbage
Counts
136 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) 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)) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) 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)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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)))))
Calls

1 calls:

35.0ms
phi1
Results
AccuracySegmentsBranch
90.6%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes41.0ms (0.2%)

Memory
-29.0MiB live, 64.1MiB allocated; 4ms collecting garbage
Counts
133 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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)))))
Calls

1 calls:

34.0ms
phi1
Results
AccuracySegmentsBranch
90.6%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes40.0ms (0.2%)

Memory
8.6MiB live, 60.3MiB allocated; 3ms collecting garbage
Counts
131 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (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)))))
Calls

1 calls:

34.0ms
phi1
Results
AccuracySegmentsBranch
90.6%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes39.0ms (0.2%)

Memory
16.2MiB live, 62.2MiB allocated; 3ms collecting garbage
Counts
128 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)) #s(approx (sin (+ lambda2 (/ (PI) 2))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) lambda2 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))))))
(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 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) #s(literal 2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 #s(approx (- lambda1 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)) (+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(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)))))
Calls

1 calls:

32.0ms
phi1
Results
AccuracySegmentsBranch
89.6%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes38.0ms (0.2%)

Memory
-37.4MiB live, 56.2MiB allocated; 3ms collecting garbage
Counts
121 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 (+.f64 phi2 (*.f64 #s(literal 1/2 binary64) (PI.f64)))))) (-.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 #s(approx (sin (- lambda1 lambda2)) (fma.f64 #s(approx (cos lambda2) #s(literal 1 binary64)) 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 (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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 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)) (sin.f64 (fma.f64 #s(literal -1 binary64) lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) 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)) (sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.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 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.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)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64)) (-.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 #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 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (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 (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 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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)))))
Calls

1 calls:

31.0ms
phi1
Results
AccuracySegmentsBranch
89.1%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes47.0ms (0.3%)

Memory
-1.8MiB live, 50.2MiB allocated; 24ms collecting garbage
Counts
98 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 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 (-.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)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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)))))
Calls

1 calls:

24.0ms
phi1
Results
AccuracySegmentsBranch
89.1%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes153.0ms (0.9%)

Memory
39.0MiB live, 230.5MiB allocated; 11ms collecting garbage
Counts
97 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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 (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 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Outputs
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)))))
Calls

6 calls:

26.0ms
lambda1
25.0ms
lambda2
25.0ms
(-.f64 lambda1 lambda2)
25.0ms
phi2
24.0ms
phi1
Results
AccuracySegmentsBranch
74.5%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 (-.f64 lambda1 lambda2)))))
83.2%3lambda2
72.7%2(-.f64 lambda1 lambda2)
81.4%3phi2
81.3%3lambda1
78.8%3phi1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes30.0ms (0.2%)

Memory
0.5MiB live, 47.2MiB allocated; 1ms collecting garbage
Counts
95 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 #s(approx (+ phi2 (/ (PI) 2)) 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)))))
Outputs
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(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)) (cos.f64 lambda2)))))
Calls

1 calls:

25.0ms
lambda2
Results
AccuracySegmentsBranch
83.2%3lambda2
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes98.0ms (0.6%)

Memory
1.4MiB live, 144.7MiB allocated; 7ms collecting garbage
Counts
90 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(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) (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)) (cos.f64 lambda2)))))
(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 #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)) (cos.f64 lambda2)))))
Calls

4 calls:

24.0ms
lambda2
24.0ms
lambda1
23.0ms
phi2
22.0ms
phi1
Results
AccuracySegmentsBranch
76.3%3phi1
74.1%4lambda1
73.5%3phi2
77.2%3lambda2
Compiler

Compiled 4 to 16 computations (-300% saved)

regimes28.0ms (0.2%)

Memory
0.0MiB live, 46.3MiB allocated; 2ms collecting garbage
Counts
89 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
Outputs
(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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
Calls

1 calls:

24.0ms
lambda2
Results
AccuracySegmentsBranch
77.2%3lambda2
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes51.0ms (0.3%)

Memory
-17.4MiB live, 75.2MiB allocated; 4ms collecting garbage
Counts
88 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (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 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) (-.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 (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)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi2) phi1) #s(literal -1/2 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) phi1 (sin.f64 phi2))))
(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)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 #s(approx (* (+ (* (sin phi1) (cos (/ (PI) 2))) (* (cos phi1) (sin (/ (PI) 2)))) (sin phi2)) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) #s(approx (cos (- lambda1 lambda2)) #s(approx (cos lambda2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.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 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (pow.f64 phi1 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (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 #s(approx (sin phi1) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 phi1 phi1) #s(literal 1/120 binary64)) (*.f64 phi1 phi1)) #s(literal 1/6 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 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 #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)) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (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 #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)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

2 calls:

24.0ms
lambda2
23.0ms
phi1
Results
AccuracySegmentsBranch
76.3%3phi1
74.3%3lambda2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes20.0ms (0.1%)

Memory
-20.5MiB live, 31.0MiB allocated; 3ms collecting garbage
Counts
62 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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 (*.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)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(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)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

1 calls:

16.0ms
phi1
Results
AccuracySegmentsBranch
76.0%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes19.0ms (0.1%)

Memory
31.8MiB live, 31.8MiB allocated; 0ms collecting garbage
Counts
61 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(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 (*.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)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 #s(approx (* (sin phi1) (cos phi2)) (sin.f64 phi1)) #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 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin 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)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (+ (* (* (sin phi1) (cos phi2)) (* (cos lambda1) (cos lambda2))) (* (* (sin phi1) (cos phi2)) (* (sin lambda2) (sin lambda1))))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Calls

1 calls:

15.0ms
phi1
Results
AccuracySegmentsBranch
75.6%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes90.0ms (0.5%)

Memory
-4.8MiB live, 135.8MiB allocated; 6ms collecting garbage
Counts
55 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Calls

6 calls:

15.0ms
(-.f64 lambda1 lambda2)
15.0ms
phi1
15.0ms
lambda1
14.0ms
lambda2
14.0ms
phi2
Results
AccuracySegmentsBranch
57.0%3lambda1
67.8%3phi2
54.5%2lambda2
54.5%2(-.f64 lambda1 lambda2)
56.6%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 (-.f64 lambda1 lambda2)))))
68.0%3phi1
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes20.0ms (0.1%)

Memory
-19.7MiB live, 30.6MiB allocated; 6ms collecting garbage
Counts
51 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Calls

1 calls:

17.0ms
phi1
Results
AccuracySegmentsBranch
68.0%3phi1
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes27.0ms (0.2%)

Memory
-2.6MiB live, 44.6MiB allocated; 1ms collecting garbage
Counts
46 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) #s(approx (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) #s(approx (* (+ (* (* phi1 phi1) -1/6) 1) phi1) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (fma.f64 (*.f64 #s(literal -1 binary64) phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Calls

2 calls:

12.0ms
phi1
12.0ms
phi2
Results
AccuracySegmentsBranch
67.6%3phi2
67.8%3phi1
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes27.0ms (0.2%)

Memory
0.8MiB live, 46.8MiB allocated; 4ms collecting garbage
Counts
43 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 #s(literal 1 binary64) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (sin phi2) phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) #s(approx (sin (+ phi2 (/ (PI) 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) (-.f64 (*.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 phi2)) (*.f64 (*.f64 #s(approx (sin phi1) (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 #s(approx (* (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (cos phi2)) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Calls

2 calls:

11.0ms
phi1
11.0ms
phi2
Results
AccuracySegmentsBranch
67.6%3phi2
67.1%3phi1
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes18.0ms (0.1%)

Memory
34.2MiB live, 34.2MiB allocated; 0ms collecting garbage
Counts
31 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Calls

2 calls:

8.0ms
phi2
8.0ms
phi1
Results
AccuracySegmentsBranch
67.1%3phi1
66.5%3phi2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes18.0ms (0.1%)

Memory
-17.5MiB live, 29.4MiB allocated; 1ms collecting garbage
Counts
29 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 #s(literal -1 binary64) (cos.f64 lambda1) (*.f64 #s(literal -1/2 binary64) (*.f64 lambda2 (sin.f64 lambda1))))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Calls

2 calls:

9.0ms
phi1
8.0ms
phi2
Results
AccuracySegmentsBranch
66.5%3phi2
65.8%3phi1
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes41.0ms (0.2%)

Memory
12.4MiB live, 62.1MiB allocated; 3ms collecting garbage
Counts
23 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Calls

6 calls:

8.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
(-.f64 lambda1 lambda2)
6.0ms
lambda2
6.0ms
phi2
6.0ms
phi1
Results
AccuracySegmentsBranch
48.7%1lambda2
48.7%1(-.f64 lambda1 lambda2)
48.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)))))
48.7%1lambda1
48.7%1phi1
48.7%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes37.0ms (0.2%)

Memory
13.3MiB live, 60.3MiB allocated; 2ms collecting garbage
Counts
21 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Calls

6 calls:

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
phi1
6.0ms
lambda2
6.0ms
lambda1
6.0ms
(-.f64 lambda1 lambda2)
Results
AccuracySegmentsBranch
35.0%1(-.f64 lambda1 lambda2)
42.0%3phi2
43.2%3lambda1
37.0%2phi1
38.3%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)) (cos.f64 (-.f64 lambda1 lambda2)))))
48.6%3lambda2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes14.0ms (0.1%)

Memory
-24.1MiB live, 22.7MiB allocated; 2ms collecting garbage
Counts
20 → 3
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
Calls

2 calls:

7.0ms
lambda2
6.0ms
lambda1
Results
AccuracySegmentsBranch
38.8%3lambda1
42.2%3lambda2
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes17.0ms (0.1%)

Memory
26.6MiB live, 26.6MiB allocated; 0ms collecting garbage
Counts
19 → 2
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
Calls

3 calls:

5.0ms
lambda2
5.0ms
phi2
5.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
33.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)))))
37.7%2phi2
33.8%1lambda2
Compiler

Compiled 26 to 25 computations (3.8% saved)

regimes21.0ms (0.1%)

Memory
-15.0MiB live, 31.8MiB allocated; 2ms collecting garbage
Counts
16 → 2
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Calls

4 calls:

6.0ms
phi2
5.0ms
phi1
5.0ms
lambda1
5.0ms
(-.f64 lambda1 lambda2)
Results
AccuracySegmentsBranch
33.8%1(-.f64 lambda1 lambda2)
33.8%1phi1
33.8%1lambda1
35.9%2phi2
Compiler

Compiled 6 to 17 computations (-183.3% saved)

regimes25.0ms (0.1%)

Memory
-9.7MiB live, 39.4MiB allocated; 3ms collecting garbage
Counts
12 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Calls

6 calls:

5.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)))))
4.0ms
lambda2
4.0ms
phi1
4.0ms
lambda1
4.0ms
(-.f64 lambda1 lambda2)
Results
AccuracySegmentsBranch
33.5%1lambda1
33.5%1(-.f64 lambda1 lambda2)
33.5%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)))))
33.5%1lambda2
33.5%1phi1
33.5%1phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes22.0ms (0.1%)

Memory
-9.1MiB live, 37.9MiB allocated; 1ms collecting garbage
Counts
11 → 2
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) (sin.f64 phi2)))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
Calls

6 calls:

5.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)))))
3.0ms
phi1
3.0ms
phi2
3.0ms
lambda1
3.0ms
lambda2
Results
AccuracySegmentsBranch
30.9%1lambda1
32.6%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)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.9%1(-.f64 lambda1 lambda2)
30.9%1phi1
30.9%1lambda2
34.5%2phi2
Compiler

Compiled 31 to 38 computations (-22.6% saved)

regimes4.0ms (0%)

Memory
7.7MiB live, 7.7MiB allocated; 0ms collecting garbage
Counts
9 → 2
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 lambda2)) (+.f64 lambda1 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 phi2 phi2)) #s(literal 1/6 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)) phi2))))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/6 binary64) #s(literal 1 binary64)) phi2))))
Calls

1 calls:

3.0ms
phi2
Results
AccuracySegmentsBranch
32.8%2phi2
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes8.0ms (0%)

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

Total -12.1b remaining (-27.5%)

Threshold costs -12.1b (-27.5%)

Counts
5 → 1
Calls
Call 1
Inputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) lambda1)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
(atan2.f64 (*.f64 (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 lambda2 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64))))) #s(approx (cos phi2) #s(literal 1 binary64))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
Outputs
(atan2.f64 #s(approx (* (sin (- lambda1 lambda2)) (sin (+ phi2 (/ (PI) 2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2)))) #s(approx (sin phi2) phi2)))
Calls

4 calls:

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
lambda2
2.0ms
phi1
2.0ms
phi2
Results
AccuracySegmentsBranch
30.9%1lambda2
30.9%1phi1
30.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)))))
30.9%1phi2
Compiler

Compiled 27 to 29 computations (-7.4% saved)

bsearch248.0ms (1.4%)

Memory
-24.4MiB live, 355.1MiB allocated; 114ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
146.0ms
929500683692995100.0
4.036368959103546e+27
86.0ms
-9189.041548421503
-0.013306563321660424
Samples
200.0ms214×1valid
16.0ms90×0valid
Compiler

Compiled 1 531 to 1 104 computations (27.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 204.0ms
ival-sin: 78.0ms (38.3% of total)
ival-cos: 70.0ms (34.3% of total)
ival-mult!: 36.0ms (17.7% of total)
adjust: 11.0ms (5.4% of total)
ival-atan2: 6.0ms (2.9% of total)
ival-sub!: 3.0ms (1.5% of total)

bsearch129.0ms (0.7%)

Memory
27.8MiB live, 173.0MiB allocated; 21ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
80.0ms
6.236027041303603
983968.77418999
43.0ms
-9189.041548421503
-0.013306563321660424
Samples
83.0ms102×1valid
29.0ms122×0valid
Compiler

Compiled 1 296 to 924 computations (28.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 104.0ms
ival-sin: 50.0ms (47.9% of total)
ival-cos: 37.0ms (35.5% of total)
ival-mult!: 6.0ms (5.8% of total)
adjust: 5.0ms (4.8% of total)
ival-atan2: 4.0ms (3.8% of total)
ival-sub!: 2.0ms (1.9% of total)

bsearch4.0ms (0%)

Memory
7.5MiB live, 7.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
6.236027041303603
983968.77418999
1.0ms
-9189.041548421503
-0.013306563321660424
Compiler

Compiled 1 179 to 870 computations (26.2% saved)

bsearch192.0ms (1.1%)

Memory
-23.0MiB live, 213.1MiB allocated; 18ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
98.0ms
0.001560211909175901
0.4855730143977974
86.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Samples
162.0ms205×1valid
10.0ms67×0valid
Compiler

Compiled 1 455 to 1 061 computations (27.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 161.0ms
ival-cos: 59.0ms (36.7% of total)
ival-sin: 49.0ms (30.5% of total)
ival-atan2: 30.0ms (18.7% of total)
adjust: 10.0ms (6.2% of total)
ival-mult!: 9.0ms (5.6% of total)
ival-sub!: 3.0ms (1.9% of total)

bsearch4.0ms (0%)

Memory
7.3MiB live, 7.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
0.001560211909175901
0.4855730143977974
1.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Compiler

Compiled 1 166 to 891 computations (23.6% saved)

bsearch173.0ms (1%)

Memory
24.1MiB live, 208.0MiB allocated; 26ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
77.0ms
9.954575738150686e-10
5.886817806600413e-8
89.0ms
-1.6356837739999748e-14
-2.730224665401927e-23
Samples
136.0ms198×1valid
8.0ms58×0valid
Compiler

Compiled 1 131 to 856 computations (24.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 134.0ms
ival-cos: 56.0ms (41.7% of total)
ival-sin: 52.0ms (38.7% of total)
adjust: 10.0ms (7.5% of total)
ival-mult!: 9.0ms (6.7% of total)
ival-atan2: 5.0ms (3.7% of total)
ival-sub!: 3.0ms (2.2% of total)

bsearch3.0ms (0%)

Memory
5.8MiB live, 5.8MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
Steps
TimeLeftRight
0.0ms
9.954575738150686e-10
5.886817806600413e-8
2.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Compiler

Compiled 817 to 614 computations (24.8% saved)

bsearch7.0ms (0%)

Memory
-35.4MiB live, 8.0MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
5.0ms
0.001560211909175901
0.4855730143977974
1.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Compiler

Compiled 1 200 to 891 computations (25.8% saved)

bsearch119.0ms (0.7%)

Memory
28.1MiB live, 179.9MiB allocated; 21ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
30.0ms
9.954575738150686e-10
5.886817806600413e-8
84.0ms
-1.6356837739999748e-14
-2.730224665401927e-23
Samples
87.0ms128×1valid
16.0ms48×0valid
Compiler

Compiled 1 163 to 840 computations (27.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 97.0ms
ival-cos: 36.0ms (37.3% of total)
ival-sin: 32.0ms (33.2% of total)
ival-mult!: 18.0ms (18.6% of total)
adjust: 6.0ms (6.2% of total)
ival-atan2: 3.0ms (3.1% of total)
ival-sub!: 2.0ms (2.1% of total)

bsearch3.0ms (0%)

Memory
6.3MiB live, 6.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
9.954575738150686e-10
5.886817806600413e-8
1.0ms
-1.6356837739999748e-14
-2.730224665401927e-23
Compiler

Compiled 1 163 to 840 computations (27.8% saved)

bsearch173.0ms (1%)

Memory
7.0MiB live, 190.0MiB allocated; 20ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
82.0ms
8.200712508945e-9
6.236027041303603
85.0ms
-13158021729.875202
-4077333967.6812835
Samples
116.0ms143×1valid
14.0ms81×0valid
Compiler

Compiled 966 to 729 computations (24.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 121.0ms
ival-sin: 48.0ms (39.6% of total)
ival-cos: 45.0ms (37.1% of total)
adjust: 14.0ms (11.6% of total)
ival-mult!: 7.0ms (5.8% of total)
ival-atan2: 4.0ms (3.3% of total)
ival-sub!: 2.0ms (1.7% of total)

bsearch84.0ms (0.5%)

Memory
-10.1MiB live, 139.4MiB allocated; 14ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
79.0ms
6.236027041303603
983968.77418999
1.0ms
-13158021729.875202
-4077333967.6812835
Samples
56.0ms60×1valid
17.0ms68×0valid
Compiler

Compiled 993 to 738 computations (25.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 69.0ms
ival-sin: 30.0ms (43.8% of total)
ival-cos: 29.0ms (42.3% of total)
ival-mult!: 4.0ms (5.8% of total)
adjust: 3.0ms (4.4% of total)
ival-atan2: 2.0ms (2.9% of total)
ival-sub!: 1.0ms (1.5% of total)

bsearch121.0ms (0.7%)

Memory
-5.1MiB live, 134.3MiB allocated; 14ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
6.236027041303603
983968.77418999
115.0ms
-4.469707115737699e-7
-9.006446145962131e-34
Samples
88.0ms81×1valid
15.0ms95×0valid
Compiler

Compiled 1 147 to 864 computations (24.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 97.0ms
ival-sin: 53.0ms (54.8% of total)
ival-cos: 31.0ms (32.1% of total)
ival-mult!: 5.0ms (5.2% of total)
adjust: 4.0ms (4.1% of total)
ival-atan2: 3.0ms (3.1% of total)
ival-sub!: 1.0ms (1% of total)

bsearch3.0ms (0%)

Memory
6.5MiB live, 6.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
6.236027041303603
983968.77418999
1.0ms
-4.469707115737699e-7
-9.006446145962131e-34
Compiler

Compiled 1 207 to 884 computations (26.8% saved)

bsearch112.0ms (0.6%)

Memory
2.8MiB live, 186.3MiB allocated; 19ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
107.0ms
909650.5402526477
10758869578075.928
1.0ms
-1.6356837739999748e-14
-2.730224665401927e-23
Samples
92.0ms101×1valid
8.0ms43×0valid
Compiler

Compiled 1 359 to 996 computations (26.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 91.0ms
ival-cos: 40.0ms (44.1% of total)
ival-sin: 35.0ms (38.6% of total)
adjust: 7.0ms (7.7% of total)
ival-mult!: 5.0ms (5.5% of total)
ival-atan2: 3.0ms (3.3% of total)
ival-sub!: 1.0ms (1.1% of total)

bsearch3.0ms (0%)

Memory
6.2MiB live, 6.2MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
9.954575738150686e-10
5.886817806600413e-8
1.0ms
-1.6356837739999748e-14
-2.730224665401927e-23
Compiler

Compiled 1 211 to 872 computations (28% saved)

bsearch84.0ms (0.5%)

Memory
3.8MiB live, 106.7MiB allocated; 21ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
909650.5402526477
10758869578075.928
79.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Samples
68.0ms92×1valid
5.0ms36×0valid
Compiler

Compiled 1 467 to 1 068 computations (27.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 67.0ms
ival-cos: 27.0ms (40% of total)
ival-sin: 20.0ms (29.7% of total)
adjust: 13.0ms (19.3% of total)
ival-mult!: 4.0ms (5.9% of total)
ival-atan2: 2.0ms (3% of total)
ival-sub!: 1.0ms (1.5% of total)

bsearch216.0ms (1.2%)

Memory
6.0MiB live, 240.4MiB allocated; 25ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
110.0ms
1.0340424793848078
909650.5402526477
98.0ms
-14414.44926587687
-3.2714778683604763e-8
Samples
165.0ms218×1valid
23.0ms86×0valid
Compiler

Compiled 1 414 to 1 031 computations (27.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 176.0ms
ival-cos: 79.0ms (44.8% of total)
ival-sin: 58.0ms (32.9% of total)
ival-mult!: 12.0ms (6.8% of total)
adjust: 11.0ms (6.2% of total)
ival-sub!: 11.0ms (6.2% of total)
ival-atan2: 6.0ms (3.4% of total)

bsearch18.0ms (0.1%)

Memory
-18.9MiB live, 24.9MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
909650.5402526477
10758869578075.928
15.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Samples
13.0ms13×1valid
0.0ms0valid
Compiler

Compiled 1 215 to 906 computations (25.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-mult!: 5.0ms (40% of total)
ival-cos: 4.0ms (32% of total)
ival-sin: 3.0ms (24% of total)
adjust: 1.0ms (8% of total)
ival-sub!: 0.0ms (0% of total)
ival-atan2: 0.0ms (0% of total)

bsearch3.0ms (0%)

Memory
5.2MiB live, 5.2MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
909650.5402526477
10758869578075.928
1.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Compiler

Compiled 1 305 to 960 computations (26.4% saved)

bsearch194.0ms (1.1%)

Memory
-23.4MiB live, 310.8MiB allocated; 28ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
114.0ms
1207.0301544315887
4.6289826405643864e+24
69.0ms
-3.602762244599769e-6
-7.380653998892716e-11
Samples
154.0ms218×1valid
15.0ms86×0valid
Compiler

Compiled 1 281 to 974 computations (24% saved)

Precisions
Click to see histograms. Total time spent on operations: 154.0ms
ival-sin: 64.0ms (41.5% of total)
ival-cos: 57.0ms (37% of total)
adjust: 13.0ms (8.4% of total)
ival-mult!: 10.0ms (6.5% of total)
ival-atan2: 6.0ms (3.9% of total)
ival-sub!: 3.0ms (1.9% of total)

bsearch128.0ms (0.7%)

Memory
-1.5MiB live, 192.2MiB allocated; 21ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
68.0ms
3.229033137569619e-5
0.001560211909175901
52.0ms
-3.2714778683604763e-8
-1.7484923026443184e-14
Samples
103.0ms149×1valid
7.0ms59×0valid
Compiler

Compiled 987 to 776 computations (21.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 103.0ms
ival-sin: 42.0ms (40.9% of total)
ival-cos: 40.0ms (39% of total)
adjust: 7.0ms (6.8% of total)
ival-mult!: 7.0ms (6.8% of total)
ival-atan2: 4.0ms (3.9% of total)
ival-sub!: 2.0ms (1.9% of total)

bsearch61.0ms (0.3%)

Memory
8.2MiB live, 104.8MiB allocated; 4ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
3.0ms
1207.0301544315887
4.6289826405643864e+24
55.0ms
-2.5258369495448174e-101
-6.909017401188822e-103
Samples
45.0ms77×1valid
5.0ms35×0valid
Compiler

Compiled 1 161 to 906 computations (22% saved)

Precisions
Click to see histograms. Total time spent on operations: 46.0ms
ival-sin: 18.0ms (39.2% of total)
ival-cos: 16.0ms (34.8% of total)
ival-mult!: 5.0ms (10.9% of total)
adjust: 4.0ms (8.7% of total)
ival-atan2: 2.0ms (4.4% of total)
ival-sub!: 1.0ms (2.2% of total)

bsearch82.0ms (0.5%)

Memory
22.0MiB live, 115.8MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
28.0ms
6.236027041303603
983968.77418999
51.0ms
-4.469707115737699e-7
-9.006446145962131e-34
Samples
55.0ms70×1valid
16.0ms90×0valid
Compiler

Compiled 1 207 to 924 computations (23.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 64.0ms
ival-cos: 28.0ms (43.4% of total)
ival-sin: 25.0ms (38.8% of total)
ival-mult!: 4.0ms (6.2% of total)
adjust: 3.0ms (4.7% of total)
ival-atan2: 2.0ms (3.1% of total)
ival-sub!: 1.0ms (1.6% of total)

bsearch125.0ms (0.7%)

Memory
-9.2MiB live, 129.5MiB allocated; 23ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
36.0ms
8.200712508945e-9
6.236027041303603
85.0ms
-4.469707115737699e-7
-9.006446145962131e-34
Samples
97.0ms85×1valid
15.0ms91×0valid
Compiler

Compiled 1 319 to 998 computations (24.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 105.0ms
ival-cos: 49.0ms (46.5% of total)
ival-sin: 30.0ms (28.5% of total)
ival-mult!: 18.0ms (17.1% of total)
adjust: 4.0ms (3.8% of total)
ival-atan2: 3.0ms (2.8% of total)
ival-sub!: 1.0ms (0.9% of total)

bsearch161.0ms (0.9%)

Memory
-17.2MiB live, 130.4MiB allocated; 26ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
137.0ms
-51028027.194961876
-3.602762244599769e-6
Samples
123.0ms122×1valid
7.0ms38×0valid
Compiler

Compiled 677 to 514 computations (24.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 123.0ms
ival-cos: 53.0ms (43.1% of total)
ival-sin: 32.0ms (26% of total)
ival-mult!: 27.0ms (21.9% of total)
adjust: 6.0ms (4.9% of total)
ival-atan2: 3.0ms (2.4% of total)
ival-sub!: 2.0ms (1.6% of total)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
predicate-same
Steps
TimeLeftRight
0.0ms
-3.602762244599769e-6
-7.380653998892716e-11
Compiler

Compiled 85 to 69 computations (18.8% saved)

bsearch2.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
-3.602762244599769e-6
-7.380653998892716e-11
Compiler

Compiled 651 to 480 computations (26.3% saved)

bsearch8.0ms (0%)

Memory
12.8MiB live, 12.8MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
predicate-same
Steps
TimeLeftRight
8.0ms
-2.6756586133940466e-37
-1.1362929376804443e-46
Samples
6.0ms11×1valid
1.0ms0valid
Compiler

Compiled 103 to 79 computations (23.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sin: 3.0ms (48.7% of total)
ival-cos: 2.0ms (32.5% of total)
adjust: 1.0ms (16.2% of total)
ival-mult!: 1.0ms (16.2% of total)
ival-sub!: 0.0ms (0% of total)
ival-atan2: 0.0ms (0% of total)

derivations1.0s (5.8%)

Memory
-26.5MiB live, 1 050.7MiB allocated; 95ms collecting garbage
Stop Event
fuel
Compiler

Compiled 3 298 to 319 computations (90.3% saved)

preprocess258.0ms (1.5%)

Memory
18.6MiB live, 392.3MiB allocated; 35ms collecting garbage
Compiler

Compiled 6 644 to 672 computations (89.9% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...