Details

Time bar (total: 1.1min)

analyze1.0s (1.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
7.8%92%0.2%9
7.8%92%0.2%10
10.1%89.7%0.2%11
10.1%89.7%0.2%12
Compiler

Compiled 29 to 18 computations (37.9% saved)

sample11.1s (16.6%)

Results
8.8s5470×body1024valid
1.3s1332×body512valid
620.0ms193×body2048valid
490.0ms1261×body256valid

preprocess145.0ms (0.2%)

Algorithm
egg-herbie
Rules
1009×fma-def
588×distribute-lft-in
515×associate--r+
471×distribute-rgt-in
411×fma-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071273
1161273
2346273
3767273
41080273
51805273
63031273
74157273
85522273
96046273
106115273
116125273
126125273
136727273
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
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)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (neg.f64 (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (fma.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 (-.f64 phi1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 (-.f64 phi2 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (cos.f64 lambda2) (sin.f64 phi2) (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (sin.f64 phi2) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (neg.f64 (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (cos.f64 (-.f64 lambda1 phi1)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (*.f64 (sin.f64 phi2) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (sin.f64 lambda2) (*.f64 (cos.f64 (-.f64 lambda1 phi1)) (neg.f64 (cos.f64 phi2))) (*.f64 (sin.f64 phi2) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi1) (neg.f64 (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
Compiler

Compiled 32 to 21 computations (34.4% saved)

simplify35.0ms (0.1%)

Algorithm
egg-herbie
Rules
265×fma-def
147×associate-*r*
121×+-commutative
101×distribute-lft-in
97×associate--r+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01839
13239
26339
312839
418139
529439
659139
777639
8110939
9174139
10189439
11192039
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (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 (cos.f64 phi2) (sin.f64 phi1)) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))

eval1.0ms (0%)

Compiler

Compiled 52 to 21 computations (59.6% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
13.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
13.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.0b
(atan2.f64 (*.f64 (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 56 to 34 computations (39.3% saved)

localize32.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 96 to 17 computations (82.3% saved)

series18.0ms (0%)

Counts
4 → 76
Calls

27 calls:

TimeVariablePointExpression
2.0ms
phi2
@inf
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
1.0ms
lambda1
@inf
(cos.f64 (-.f64 lambda1 lambda2))
1.0ms
lambda1
@0
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
phi1
@inf
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
1.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))

rewrite126.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
451×distribute-rgt-in
425×distribute-lft-in
420×associate-*r/
325×associate-*l/
154×add-sqr-sqrt-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01331
128031
2378131
Stop Event
node limit
Counts
4 → 178
Calls
Call 1
Inputs
(sin.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (+.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (+.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 1 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 1 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2))) (+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2)))) (*.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2))) 1) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 1 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.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)))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.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))))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3))) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.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)))) 1) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) 1) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (-.f64 lambda1 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1)) (*.f64 1 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1) 1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 (neg.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 1) (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) 1) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (-.f64 lambda1 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 1 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) 1) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (sin.f64 phi1)) 1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 2 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)) phi1) (-.f64 lambda1 lambda2)) 2)) (cos.f64 (/.f64 (+.f64 (-.f64 phi1 lambda1) (-.f64 lambda2 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))) (/.f64 2 (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) (/.f64 2 (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) (*.f64 2 (-.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) 3) (pow.f64 (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)) 3)) (*.f64 2 (+.f64 (*.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (*.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2) (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi1)) (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (sin.f64 phi1)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) 1) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) 1/2) (-.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) 3) (pow.f64 (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)) 3)) 1/2) (+.f64 (*.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (*.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (sin.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi1) (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi2) (cos.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi1)) 2) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (cos.f64 phi1)) 2)) (cbrt.f64 (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi1) 3) (pow.f64 (sin.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))

simplify772.0ms (1.1%)

Algorithm
egg-herbie
Rules
672×associate-*r*
482×associate-*l*
417×distribute-lft-neg-out
363×distribute-rgt-out
335×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01531257
14611193
213911090
337171049
Stop Event
node limit
Counts
254 → 254
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (neg.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 (cos.f64 phi1) phi2)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (*.f64 (cos.f64 phi1) phi2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
Outputs
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2)))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))) (sin.f64 lambda2)))
(+.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2)) (-.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (sin.f64 lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
(+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(-.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))
(fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))
(fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))))
(+.f64 (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (fma.f64 1/6 (neg.f64 (*.f64 (pow.f64 lambda1 3) (sin.f64 lambda2))) (cos.f64 lambda2)))
(+.f64 (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1)))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(+.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 (cos.f64 lambda2) -1/2) (*.f64 lambda1 (*.f64 -1/6 (sin.f64 lambda2))))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 5) 1/120))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 7)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 5) 1/120)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(fma.f64 -1 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(fma.f64 -1 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) lambda1) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1))))
(fma.f64 (sin.f64 lambda2) (*.f64 lambda1 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1)) lambda1) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(-.f64 (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1))))) (*.f64 (sin.f64 phi1) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 (cos.f64 lambda2) -1/2) (*.f64 lambda1 (*.f64 -1/6 (sin.f64 lambda2)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(fma.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 -1/6 (*.f64 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (sin.f64 phi1)) (fma.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))
(fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi2) phi1) phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(fma.f64 1/24 (*.f64 (sin.f64 phi2) (pow.f64 phi1 4)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(*.f64 (sin.f64 phi2) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (*.f64 1/24 (pow.f64 phi1 4))))
(*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi2) (pow.f64 phi1 6)) (fma.f64 1/24 (*.f64 (sin.f64 phi2) (pow.f64 phi1 4)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi2) phi1) phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (*.f64 1/24 (pow.f64 phi1 4)))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/720 (pow.f64 phi1 6))) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(*.f64 (sin.f64 phi2) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/720 (pow.f64 phi1 6)))))
(*.f64 (cos.f64 phi1) phi2)
(*.f64 phi2 (cos.f64 phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (*.f64 (cos.f64 phi1) phi2))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (*.f64 phi2 (cos.f64 phi1)))
(*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 (cos.f64 phi1) phi2 (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)) (*.f64 phi2 (cos.f64 phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))))
(*.f64 (cos.f64 phi1) (+.f64 phi2 (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (*.f64 1/120 (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 (cos.f64 phi1) phi2 (fma.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7)) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 phi2 (cos.f64 phi1) (fma.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)) (*.f64 (cos.f64 phi1) (*.f64 (pow.f64 phi2 7) -1/5040)))))
(+.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/5040 (pow.f64 phi2 7)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (*.f64 -1/6 (pow.f64 phi2 3)))))
(*.f64 (cos.f64 phi1) (+.f64 (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3))) (+.f64 (*.f64 -1/5040 (pow.f64 phi2 7)) (*.f64 1/120 (pow.f64 phi2 5)))))

localize66.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 94 to 17 computations (81.9% saved)

series20.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
phi2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
phi2
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
lambda1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))

rewrite87.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
438×associate-*r/
424×distribute-rgt-in
400×distribute-lft-in
351×associate-*l/
133×add-sqr-sqrt-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01116
124116
2333916
Stop Event
node limit
Counts
1 → 69
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.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 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 1 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (-.f64 phi2 lambda1) lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (cos.f64 (-.f64 lambda1 lambda2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (-.f64 phi2 lambda1) lambda2))) (sin.f64 phi1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))

simplify91.0ms (0.1%)

Algorithm
egg-herbie
Rules
737×associate-*r*
678×fma-def
508×distribute-rgt-out
374×*-commutative
352×fma-neg
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01151200
13361174
210691037
33417965
47901965
Stop Event
node limit
Counts
117 → 102
Calls
Call 1
Inputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(*.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 (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 (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 (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
Outputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)))))
(+.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 phi2 phi2) -1/2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 phi2 phi2))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 phi2 phi2)))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))) (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) 1) (sin.f64 phi1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (neg.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))) (sin.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) -1/2)) (neg.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))) (sin.f64 lambda2)))))
(fma.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (fma.f64 1/6 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (fma.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) -1/2)) (neg.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))) (sin.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 1/6 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 lambda1 lambda1)) (sin.f64 phi1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (+.f64 (*.f64 (*.f64 -1/2 lambda2) lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (+.f64 (*.f64 (*.f64 -1/2 lambda2) lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))

eval142.0ms (0.2%)

Compiler

Compiled 17938 to 3456 computations (80.7% saved)

prune167.0ms (0.2%)

Pruning

47 alts after pruning (47 fresh and 0 done)

PrunedKeptTotal
New47347520
Fresh000
Picked101
Done101
Total47547522
Error
5.0b
Counts
522 → 47
Alt Table
Click to see full alt table
StatusErrorProgram
22.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
38.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
20.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.2b
(atan2.f64 (*.f64 (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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
24.6b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
13.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.8b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
25.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
18.5b
(atan2.f64 (*.f64 (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 lambda2))))
13.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.8b
(atan2.f64 (*.f64 (sin.f64 (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)))))
13.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
13.0b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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)))))
24.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
25.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
8.6b
(atan2.f64 (*.f64 (/.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)))) (+.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)))))
33.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
25.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
13.1b
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (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)))))
25.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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)))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
19.5b
(atan2.f64 (*.f64 (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 lambda1))))
13.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
21.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
13.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
33.8b
(atan2.f64 (*.f64 (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)))))
5.2b
(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)))))
13.3b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
38.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 3092 to 1916 computations (38% saved)

localize44.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 134 to 23 computations (82.8% saved)

series8.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
4.0ms
lambda2
@0
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda1
@inf
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda2
@inf
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda1
@0
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda2
@-inf
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))

rewrite48.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
562×pow1-binary64
513×add-exp-log-binary64
513×expm1-log1p-u-binary64
513×log1p-expm1-u-binary64
501×add-log-exp-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11168
213848
Stop Event
node limit
Counts
1 → 27
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 lambda2) (cos.f64 lambda1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda1)) 2) (*.f64 (cbrt.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 lambda1)) (*.f64 (sqrt.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 lambda2)) (*.f64 (sqrt.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2)) (cbrt.f64 (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 lambda1) (sqrt.f64 (sin.f64 lambda2))) (sqrt.f64 (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda2) (pow.f64 (cbrt.f64 (cos.f64 lambda1)) 2)) (cbrt.f64 (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda2) (sqrt.f64 (cos.f64 lambda1))) (sqrt.f64 (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))

simplify125.0ms (0.2%)

Algorithm
egg-herbie
Rules
1177×distribute-lft-out
734×fma-def
527×associate-*r*
471×sqr-pow
419×unswap-sqr
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046308
1124298
2342280
3929266
43031263
54914263
65960263
76327263
86621263
97000263
107462263
Stop Event
node limit
Counts
51 → 41
Calls
Call 1
Inputs
(sin.f64 lambda2)
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2)))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 lambda2 (cos.f64 lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
Outputs
(sin.f64 lambda2)
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (sin.f64 lambda2))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (sin.f64 lambda2))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2)))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (fma.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (sin.f64 lambda2)))
(+.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4)))))
(*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (fma.f64 1/24 (pow.f64 lambda1 4) 1)))
(*.f64 (sin.f64 lambda2) (+.f64 1 (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 1/24 (pow.f64 lambda1 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2))))
(fma.f64 -1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6)) (fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (fma.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (sin.f64 lambda2))))
(+.f64 (sin.f64 lambda2) (fma.f64 (sin.f64 lambda2) (*.f64 -1/720 (pow.f64 lambda1 6)) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4))))))
(fma.f64 (sin.f64 lambda2) (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 -1/720 (pow.f64 lambda1 6))) (*.f64 (sin.f64 lambda2) (fma.f64 1/24 (pow.f64 lambda1 4) 1)))
(*.f64 (sin.f64 lambda2) (+.f64 (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 1/24 (pow.f64 lambda1 4))) (fma.f64 -1/720 (pow.f64 lambda1 6) 1)))
(*.f64 (sin.f64 lambda2) (+.f64 (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 -1/720 (pow.f64 lambda1 6))) (fma.f64 1/24 (pow.f64 lambda1 4) 1)))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 lambda2 (cos.f64 lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))
(*.f64 (cos.f64 lambda1) (fma.f64 -1/6 (pow.f64 lambda2 3) lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 lambda2 (cos.f64 lambda1) (*.f64 (*.f64 1/120 (pow.f64 lambda2 5)) (cos.f64 lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.f64 (cos.f64 lambda1) (+.f64 (fma.f64 -1/6 (pow.f64 lambda2 3) lambda2) (*.f64 1/120 (pow.f64 lambda2 5))))
(*.f64 (cos.f64 lambda1) (fma.f64 -1/6 (pow.f64 lambda2 3) (fma.f64 1/120 (pow.f64 lambda2 5) lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 7)) (fma.f64 lambda2 (cos.f64 lambda1) (*.f64 (*.f64 1/120 (pow.f64 lambda2 5)) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (*.f64 -1/5040 (pow.f64 lambda2 7)))))
(*.f64 (cos.f64 lambda1) (+.f64 (fma.f64 1/120 (pow.f64 lambda2 5) lambda2) (fma.f64 -1/6 (pow.f64 lambda2 3) (*.f64 -1/5040 (pow.f64 lambda2 7)))))
(*.f64 (cos.f64 lambda1) (+.f64 (fma.f64 -1/6 (pow.f64 lambda2 3) lambda2) (fma.f64 -1/5040 (pow.f64 lambda2 7) (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.f64 (cos.f64 lambda1) (+.f64 (fma.f64 -1/6 (pow.f64 lambda2 3) lambda2) (fma.f64 1/120 (pow.f64 lambda2 5) (*.f64 -1/5040 (pow.f64 lambda2 7)))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))

localize27.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 81 to 15 computations (81.5% saved)

series3.0ms (0%)

Counts
1 → 16
Calls

6 calls:

TimeVariablePointExpression
1.0ms
phi2
@inf
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
1.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
0.0ms
phi2
@0
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
0.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
0.0ms
phi2
@-inf
(*.f64 (sin.f64 phi1) (cos.f64 phi2))

rewrite51.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
659×pow1-binary64
608×add-exp-log-binary64
608×expm1-log1p-u-binary64
608×log1p-expm1-u-binary64
594×add-log-exp-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11238
215838
Stop Event
node limit
Counts
1 → 30
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2)) (cbrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (sqrt.f64 (cos.f64 phi2))) (sqrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))

simplify125.0ms (0.2%)

Algorithm
egg-herbie
Rules
1199×distribute-lft-out
741×fma-def
522×associate-*r*
471×sqr-pow
419×unswap-sqr
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
048250
1128238
2357216
3954202
43023199
54911199
65977199
76344199
86638199
97017199
107479199
Stop Event
node limit
Counts
46 → 44
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
Outputs
(*.f64 (cos.f64 phi2) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 (cos.f64 phi2) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (fma.f64 -1/6 (pow.f64 phi1 3) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) (fma.f64 1/120 (pow.f64 phi1 5) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 (cos.f64 phi2) phi1))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 1/120 (pow.f64 phi1 5) phi1) (fma.f64 -1/6 (pow.f64 phi1 3) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (fma.f64 -1/6 (pow.f64 phi1 3) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 -1/5040 (pow.f64 phi1 7) (fma.f64 1/120 (pow.f64 phi1 5) phi1))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1))
(fma.f64 (sin.f64 phi1) (*.f64 phi2 (*.f64 phi2 -1/2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24)))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 phi2 (*.f64 phi2 -1/2) 1) (*.f64 1/24 (pow.f64 phi2 4))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (fma.f64 1/24 (pow.f64 phi2 4) 1)))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1)) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) -1/720))))
(+.f64 (sin.f64 phi1) (fma.f64 (sin.f64 phi1) (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(fma.f64 (sin.f64 phi1) (fma.f64 -1/720 (pow.f64 phi2 6) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 phi2 (*.f64 phi2 -1/2) 1) (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/720 (pow.f64 phi2 6))) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))

localize46.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
0.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 129 to 55 computations (57.4% saved)

series17.0ms (0%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
phi1
@0
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
1.0ms
lambda1
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
lambda2
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
phi2
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
phi1
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))

rewrite86.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
428×associate-+l+
265×add-sqr-sqrt-binary64
261×+-commutative
260×pow1-binary64
259×*-un-lft-identity-binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02269
150265
2700265
Stop Event
node limit
Counts
2 → 68
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) 2) (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/6 (pow.f64 phi1 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) 2) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 2) (*.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 2)) (cbrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) (sqrt.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) 2)) (cbrt.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (sqrt.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 phi1 phi1) (*.f64 1/36 (pow.f64 phi1 6)))) (+.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (pow.f64 phi1 3) (*.f64 -1/216 (pow.f64 (pow.f64 phi1 3) 3)))) (fma.f64 phi1 phi1 (-.f64 (*.f64 1/36 (pow.f64 phi1 6)) (*.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))))))

simplify107.0ms (0.2%)

Algorithm
egg-herbie
Rules
772×distribute-lft-neg-in
653×fma-def
566×distribute-rgt-neg-in
405×*-commutative
274×distribute-lft-in
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01263517
13863504
213733358
339943314
470113301
Stop Event
node limit
Counts
164 → 107
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(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)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))
(fma.f64 -1 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 lambda1 (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 lambda1 (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2)))))
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))
(fma.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))))
(fma.f64 1/6 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 lambda1 3))) (fma.f64 -1 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 lambda1 (fma.f64 -1/6 (pow.f64 phi1 3) phi1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2))))))
(fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2)))) (-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))) (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 1/6 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 lambda1 3))) (*.f64 lambda1 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 lambda1 3)) (*.f64 -1/6 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 lambda1))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)) (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (fma.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1) (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)) (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1))))) (*.f64 -1/2 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))
(fma.f64 (cos.f64 phi2) (fma.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1) (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 lambda2 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)) (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1))) (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)) (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1))))) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1))))))
(fma.f64 (cos.f64 phi2) (fma.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1) (*.f64 lambda2 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 lambda2 3))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (cos.f64 lambda1))) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (*.f64 phi2 phi2) -1/2)))
(*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) -1/2))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 phi2 phi2))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 phi2 4))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 (*.f64 phi2 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 phi2 4))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 phi2 phi2))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 phi2 4))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 (*.f64 phi2 (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (pow.f64 phi2 4))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))))
(+.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 6) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) -1/720)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 -1/2 (*.f64 phi2 phi2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(*.f64 -1/6 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 phi1 3)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(*.f64 -1/6 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 phi1 3)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))

localize36.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
0.4b
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 109 to 19 computations (82.6% saved)

series114.0ms (0.2%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
45.0ms
lambda2
@-inf
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
35.0ms
lambda1
@inf
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
17.0ms
lambda1
@-inf
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
13.0ms
lambda2
@inf
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda1
@0
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))

rewrite57.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
775×pow1-binary64
718×add-exp-log-binary64
718×expm1-log1p-u-binary64
718×log1p-expm1-u-binary64
705×add-log-exp-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11358
218398
Stop Event
node limit
Counts
1 → 16
Calls
Call 1
Inputs
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (cbrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 2) (cbrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))

simplify52.0ms (0.1%)

Algorithm
egg-herbie
Rules
755×associate-+r+
732×associate-+l+
553×associate-/r/
472×associate-*r*
371×associate-*l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
098614
1300566
21110542
34930542
Stop Event
node limit
Counts
40 → 35
Calls
Call 1
Inputs
(log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1))
(+.f64 (/.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1)))
(+.f64 (/.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (+.f64 (log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 2))) (*.f64 -1 (/.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)))) (pow.f64 lambda1 2)))))
(+.f64 (/.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (+.f64 (log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 3 (/.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2))) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 2))) (+.f64 (*.f64 -1 (/.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (sin.f64 (neg.f64 lambda2)) 1))) (*.f64 2 (/.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 3) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 3))))) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 2))) (*.f64 -1 (/.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)))) (pow.f64 lambda1 2))))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log.f64 (+.f64 1 (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))) (log.f64 (+.f64 1 (sin.f64 lambda1))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (*.f64 -1 (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))) (log.f64 (+.f64 1 (sin.f64 lambda1)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (*.f64 -1 (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 -3 (/.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (+.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) (*.f64 -2 (/.f64 (pow.f64 (cos.f64 lambda1) 3) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 3))))))) (log.f64 (+.f64 1 (sin.f64 lambda1))))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
Outputs
(log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1))
(log.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1))
(log1p.f64 (neg.f64 (sin.f64 lambda2)))
(+.f64 (/.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1)))
(+.f64 (log.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1)) (/.f64 (cos.f64 lambda2) (/.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) lambda1)))
(+.f64 (log1p.f64 (neg.f64 (sin.f64 lambda2))) (/.f64 (*.f64 (cos.f64 lambda2) lambda1) (-.f64 1 (sin.f64 lambda2))))
(fma.f64 (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) lambda1 (log1p.f64 (neg.f64 (sin.f64 lambda2))))
(+.f64 (/.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (+.f64 (log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 2))) (*.f64 -1 (/.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)))) (pow.f64 lambda1 2)))))
(+.f64 (+.f64 (log.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1)) (/.f64 (cos.f64 lambda2) (/.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) lambda1))) (*.f64 1/2 (*.f64 (fma.f64 -1 (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) 2)) (neg.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (neg.f64 (sin.f64 lambda2)) 1)))) (*.f64 lambda1 lambda1))))
(+.f64 (/.f64 (*.f64 (cos.f64 lambda2) lambda1) (-.f64 1 (sin.f64 lambda2))) (fma.f64 (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 1 (sin.f64 lambda2))))) (*.f64 lambda1 lambda1) (log1p.f64 (neg.f64 (sin.f64 lambda2)))))
(fma.f64 (-.f64 (/.f64 (sin.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2))) (*.f64 lambda1 (*.f64 lambda1 1/2)) (fma.f64 (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) lambda1 (log1p.f64 (neg.f64 (sin.f64 lambda2)))))
(+.f64 (/.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (+.f64 (log.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1)) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 3 (/.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2))) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 2))) (+.f64 (*.f64 -1 (/.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (sin.f64 (neg.f64 lambda2)) 1))) (*.f64 2 (/.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 3) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 3))))) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (pow.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) 1) 2))) (*.f64 -1 (/.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (sin.f64 (neg.f64 lambda2)) 1)))) (pow.f64 lambda1 2))))))
(+.f64 (+.f64 (log.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1)) (/.f64 (cos.f64 lambda2) (/.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) lambda1))) (fma.f64 1/6 (*.f64 (fma.f64 3 (/.f64 (neg.f64 (sin.f64 lambda2)) (/.f64 (pow.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) 2) (cos.f64 lambda2))) (fma.f64 -1 (/.f64 (cos.f64 lambda2) (+.f64 (neg.f64 (sin.f64 lambda2)) 1)) (/.f64 (*.f64 2 (pow.f64 (cos.f64 lambda2) 3)) (pow.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) 3)))) (pow.f64 lambda1 3)) (*.f64 1/2 (*.f64 (fma.f64 -1 (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) 1) 2)) (neg.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (neg.f64 (sin.f64 lambda2)) 1)))) (*.f64 lambda1 lambda1)))))
(+.f64 (log1p.f64 (neg.f64 (sin.f64 lambda2))) (+.f64 (/.f64 (*.f64 (cos.f64 lambda2) lambda1) (-.f64 1 (sin.f64 lambda2))) (fma.f64 1/6 (*.f64 (fma.f64 3 (*.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2)) (cos.f64 lambda2)) (-.f64 (/.f64 (*.f64 2 (pow.f64 (cos.f64 lambda2) 3)) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 3)) (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))))) (pow.f64 lambda1 3)) (*.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 1 (sin.f64 lambda2)))))))))
(fma.f64 (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) lambda1 (fma.f64 1/2 (*.f64 lambda1 (*.f64 lambda1 (-.f64 (/.f64 (sin.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2))))) (fma.f64 (fma.f64 2 (pow.f64 (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) 3) (-.f64 (*.f64 (/.f64 (*.f64 -3 (sin.f64 lambda2)) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2)) (cos.f64 lambda2)) (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))))) (*.f64 1/6 (pow.f64 lambda1 3)) (log1p.f64 (neg.f64 (sin.f64 lambda2))))))
(fma.f64 (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) lambda1 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 (sin.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) (/.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2))) (*.f64 lambda1 lambda1)) (fma.f64 (-.f64 (fma.f64 2 (pow.f64 (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2))) 3) (*.f64 (/.f64 (*.f64 -3 (sin.f64 lambda2)) (pow.f64 (-.f64 1 (sin.f64 lambda2)) 2)) (cos.f64 lambda2))) (/.f64 (cos.f64 lambda2) (-.f64 1 (sin.f64 lambda2)))) (*.f64 1/6 (pow.f64 lambda1 3)) (log1p.f64 (neg.f64 (sin.f64 lambda2))))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 lambda1)))
(log1p.f64 (sin.f64 lambda1))
(+.f64 (*.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))) (log.f64 (+.f64 1 (sin.f64 lambda1))))
(fma.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1))) (log1p.f64 (sin.f64 lambda1)))
(-.f64 (log1p.f64 (sin.f64 lambda1)) (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1))))
(-.f64 (log1p.f64 (sin.f64 lambda1)) (*.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) lambda2))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (*.f64 -1 (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))) (log.f64 (+.f64 1 (sin.f64 lambda1)))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 -1 (+.f64 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))))) (fma.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1))) (log1p.f64 (sin.f64 lambda1))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (/.f64 (neg.f64 (pow.f64 (cos.f64 lambda1) 2)) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))))) (-.f64 (log1p.f64 (sin.f64 lambda1)) (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))))
(fma.f64 (*.f64 (*.f64 lambda2 lambda2) -1/2) (+.f64 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))) (-.f64 (log1p.f64 (sin.f64 lambda1)) (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))))
(fma.f64 (*.f64 (*.f64 lambda2 lambda2) -1/2) (+.f64 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))) (-.f64 (log1p.f64 (sin.f64 lambda1)) (*.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) lambda2)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (*.f64 -1 (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 -3 (/.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (+.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) (*.f64 -2 (/.f64 (pow.f64 (cos.f64 lambda1) 3) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 3))))))) (log.f64 (+.f64 1 (sin.f64 lambda1))))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 -1 (+.f64 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))))) (fma.f64 -1 (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1))) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (fma.f64 -3 (/.f64 (sin.f64 lambda1) (/.f64 (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2) (cos.f64 lambda1))) (+.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) (/.f64 (*.f64 -2 (pow.f64 (cos.f64 lambda1) 3)) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 3))))) (log1p.f64 (sin.f64 lambda1)))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (/.f64 (neg.f64 (pow.f64 (cos.f64 lambda1) 2)) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))))) (-.f64 (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (fma.f64 -3 (*.f64 (/.f64 (sin.f64 lambda1) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (cos.f64 lambda1)) (fma.f64 -2 (/.f64 (pow.f64 (cos.f64 lambda1) 3) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 3)) (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))))) (log1p.f64 (sin.f64 lambda1))) (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1)))))
(fma.f64 (*.f64 lambda2 lambda2) (*.f64 (+.f64 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))) -1/2) (fma.f64 (fma.f64 -3 (*.f64 (cos.f64 lambda1) (/.f64 (sin.f64 lambda1) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (fma.f64 -2 (pow.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) 3) (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))))) (*.f64 1/6 (pow.f64 lambda2 3)) (-.f64 (log1p.f64 (sin.f64 lambda1)) (/.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 1 (sin.f64 lambda1))))))
(fma.f64 (*.f64 lambda2 lambda2) (*.f64 (+.f64 (/.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2)) (/.f64 (sin.f64 lambda1) (+.f64 1 (sin.f64 lambda1)))) -1/2) (fma.f64 (fma.f64 -3 (*.f64 (cos.f64 lambda1) (/.f64 (sin.f64 lambda1) (pow.f64 (+.f64 1 (sin.f64 lambda1)) 2))) (fma.f64 -2 (pow.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) 3) (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))))) (*.f64 1/6 (pow.f64 lambda2 3)) (-.f64 (log1p.f64 (sin.f64 lambda1)) (*.f64 (/.f64 (cos.f64 lambda1) (+.f64 1 (sin.f64 lambda1))) lambda2))))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))
(log.f64 (+.f64 1 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))

localize37.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 115 to 26 computations (77.4% saved)

series6.0ms (0%)

Counts
1 → 20
Calls

6 calls:

TimeVariablePointExpression
2.0ms
phi2
@0
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
1.0ms
phi1
@0
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
1.0ms
phi2
@inf
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
1.0ms
phi2
@-inf
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
1.0ms
phi1
@-inf
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)

rewrite63.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
713×pow1-binary64
656×add-exp-log-binary64
656×expm1-log1p-u-binary64
656×log1p-expm1-u-binary64
641×add-log-exp-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
098
11828
218328
Stop Event
node limit
Counts
1 → 34
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi1) (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi2) (cos.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi1)) 2) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4) (*.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4)) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (cos.f64 phi1)) 2)) (cbrt.f64 (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (cbrt.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))

simplify83.0ms (0.1%)

Algorithm
egg-herbie
Rules
778×associate-*r*
703×fma-def
672×associate-+r-
626×associate-*l*
316×distribute-lft-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
032238
178238
2231215
3750201
44494201
57245201
Stop Event
node limit
Counts
54 → 41
Calls
Call 1
Inputs
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
Outputs
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(fma.f64 (pow.f64 phi1 4) (-.f64 (*.f64 (sin.f64 phi2) 5/48) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)))
(fma.f64 (pow.f64 phi1 4) (fma.f64 (sin.f64 phi2) 5/48 (*.f64 (sin.f64 phi2) -1/16)) (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(fma.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (*.f64 (sin.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi2) (pow.f64 phi1 6)) (fma.f64 (pow.f64 phi1 4) (-.f64 (*.f64 (sin.f64 phi2) 5/48) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))))
(fma.f64 (pow.f64 phi1 4) (fma.f64 (sin.f64 phi2) 5/48 (*.f64 (sin.f64 phi2) -1/16)) (*.f64 (sin.f64 phi2) (+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (*.f64 -1/720 (pow.f64 phi1 6)))))
(fma.f64 (sin.f64 phi2) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (sin.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))

eval435.0ms (0.6%)

Compiler

Compiled 45749 to 10083 computations (78% saved)

prune675.0ms (1%)

Pruning

80 alts after pruning (80 fresh and 0 done)

PrunedKeptTotal
New1180581238
Fresh202242
Picked101
Done404
Total1205801285
Error
0.0b
Counts
1285 → 80
Alt Table
Click to see full alt table
StatusErrorProgram
38.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))))
21.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
18.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
23.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
13.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.8b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (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.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
30.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
19.5b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
25.6b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
31.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
10.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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))))))
25.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
18.5b
(atan2.f64 (*.f64 (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 lambda2))))
20.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
21.4b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.8b
(atan2.f64 (*.f64 (sin.f64 (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)))))
35.4b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
13.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
26.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.9b
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
42.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
24.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
41.2b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
25.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
26.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
32.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
21.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
33.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
25.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
37.7b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
29.5b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
11.5b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
32.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
6.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
37.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
21.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
11.1b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
34.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
16.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
31.8b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (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)))))
21.2b
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.8b
(atan2.f64 (*.f64 (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)))))
5.2b
(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)))))
13.3b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (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.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 5334 to 3388 computations (36.5% saved)

localize71.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
Compiler

Compiled 160 to 23 computations (85.6% saved)

series32.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
7.0ms
lambda2
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
3.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
3.0ms
phi2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
2.0ms
lambda2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
2.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))

rewrite97.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
354×distribute-rgt-in
331×distribute-lft-in
306×associate-*r/
270×associate-*l/
163×add-sqr-sqrt-binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01534
130624
2396824
Stop Event
node limit
Counts
2 → 120
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.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 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2))) (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (cos.f64 (-.f64 lambda1 lambda2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (/.f64 (cos.f64 (+.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda1)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 lambda2)) (*.f64 (sqrt.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 lambda1)) (*.f64 (sqrt.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda1) (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2)) (cbrt.f64 (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda1) (sqrt.f64 (sin.f64 lambda2))) (sqrt.f64 (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda2) (pow.f64 (cbrt.f64 (sin.f64 lambda1)) 2)) (cbrt.f64 (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 lambda2) (sqrt.f64 (sin.f64 lambda1))) (sqrt.f64 (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))) (/.f64 2 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) (/.f64 2 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) (*.f64 2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 (+.f64 lambda1 lambda2)) 3)) (*.f64 2 (+.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (cos.f64 (+.f64 lambda1 lambda2)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -2 (/.f64 2 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 lambda1 lambda2)) 2)) (sin.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 lambda1 lambda2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) 1) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) 1/2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 (+.f64 lambda1 lambda2)) 3)) 1/2) (+.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (cos.f64 (+.f64 lambda1 lambda2)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (sin.f64 lambda2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (sin.f64 lambda1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))

simplify272.0ms (0.4%)

Algorithm
egg-herbie
Rules
902×unswap-sqr
549×+-commutative
548×*-commutative
517×sqr-pow
374×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01262015
14271932
215981749
333031749
439991749
546021749
651131749
763471749
864771749
969201749
1071751749
1174811749
1278521749
Stop Event
node limit
Counts
192 → 171
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 lambda2) lambda1)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 lambda2 (sin.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (sin.f64 lambda1))))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
Outputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 5)))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (fma.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 7)) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 5))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2)))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) -1/2)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (sin.f64 phi1))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 phi2))))
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 lambda2) lambda1)
(*.f64 lambda1 (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 lambda2) lambda1))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 lambda1 (sin.f64 lambda2)))
(fma.f64 (*.f64 (sin.f64 lambda2) -1/6) (pow.f64 lambda1 3) (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1)))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)) (*.f64 lambda1 (sin.f64 lambda2))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 5) 1/120))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7)) (fma.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)) (*.f64 lambda1 (sin.f64 lambda2)))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7)) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 5) 1/120)))))
(+.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 1/120 (pow.f64 lambda1 5)))) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/5040 (pow.f64 lambda1 7)) lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 lambda2 (sin.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) lambda2))
(*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1)))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5)) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (sin.f64 lambda1))))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5)) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 -1/5040 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 7))))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3)))) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) lambda2)))
(*.f64 (sin.f64 lambda1) (+.f64 (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3))) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.f64 (sin.f64 lambda1) (+.f64 (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5))) (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))

localize43.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 67 to 14 computations (79.1% saved)

series5.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda1
@inf
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
lambda1
@0
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
phi2
@0
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda2
@inf
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda2
@0
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))

rewrite85.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
657×associate-*r/
567×distribute-lft-in
477×associate-*l/
171×egg-rr
160×associate-+l+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01116
125316
2369116
Stop Event
node limit
Counts
1 → 171
Calls
Call 1
Inputs
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 phi2) (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (sin.f64 phi1))) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (sin.f64 phi1))) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 phi2) (*.f64 (neg.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (neg.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (sin.f64 phi1)))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 phi2) (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 phi2) (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 phi2) (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 phi2) (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 phi2) (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 phi2) (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 phi2))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 phi2))) (-.f64 1 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 phi2))) (-.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 1 (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 1 (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 1 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (fma.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 phi2) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sin.f64 phi2) 0) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (exp.f64 (log1p.f64 (sin.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 phi2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (sin.f64 phi2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (+.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (+.f64 (pow.f64 (sin.f64 phi2) 2) (-.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (-.f64 (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (sin.f64 phi2) 2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (-.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (+.f64 (pow.f64 (pow.f64 (sin.f64 phi2) 2) 3) (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))) (+.f64 (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (sin.f64 phi2) 2)) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (*.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (/.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (/.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (/.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (/.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (/.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (/.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (sin.f64 phi2) 2)) (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (*.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (sin.f64 phi2) 3)) (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (*.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 3)) (+.f64 (pow.f64 (sin.f64 phi2) 2) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (sin.f64 phi2) 2) 3) (pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) 3)) (*.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (sin.f64 phi2) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (sin.f64 phi2) 3) 3) (pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) 3)) (*.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (sin.f64 phi2) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (neg.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) 1) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) 1) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 3))) (+.f64 (pow.f64 (sin.f64 phi2) 2) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (neg.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (neg.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (cbrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (cbrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (sqrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) 1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 3)) 1) (+.f64 (pow.f64 (sin.f64 phi2) 2) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) 1) (neg.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) 1) (neg.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2)) (cbrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2)) (cbrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (sqrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (sin.f64 phi2) 2)) (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (/.f64 1 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (sin.f64 phi2) 2) 3) (pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) 3)) (/.f64 1 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (sin.f64 phi2) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (*.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (sin.f64 phi2) 3)) (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (/.f64 1 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (+.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (sin.f64 phi2) 3) 3) (pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (+.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (sin.f64 phi2) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) 1) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (*.f64 (cbrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (cbrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (cbrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (sqrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (sqrt.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) 1) (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (cbrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (cbrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 phi2) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi2)) (sqrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))

simplify73.0ms (0.1%)

Algorithm
egg-herbie
Rules
619×fma-def
543×fma-neg
346×associate-+l-
342×associate-+l+
327×associate-*r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0100975
1320958
2931918
33030885
Stop Event
node limit
Counts
219 → 206
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (sin.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
Outputs
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) phi2)
(fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) phi2)
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (fma.f64 -1/6 (pow.f64 phi2 3) phi2))
(fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (fma.f64 -1/6 (pow.f64 phi2 3) phi2))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (fma.f64 -1/6 (pow.f64 phi2 3) phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (fma.f64 -1/6 (pow.f64 phi2 3) phi2) (*.f64 1/120 (pow.f64 phi2 5))))
(-.f64 (fma.f64 -1/6 (pow.f64 phi2 3) (fma.f64 1/120 (pow.f64 phi2 5) phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (fma.f64 -1/6 (pow.f64 phi2 3) (fma.f64 1/120 (pow.f64 phi2 5) phi2)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (sin.f64 phi2)))
(fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 phi1 3)) phi1)))
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 1/6 (pow.f64 phi1 3) (neg.f64 phi1))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (sin.f64 phi2))))
(fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (fma.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)) (sin.f64 phi2))))
(fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (-.f64 (fma.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/120 (pow.f64 phi1 5)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 phi1 3)) phi1)))
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/6 (pow.f64 phi1 3)) (-.f64 (*.f64 -1/120 (pow.f64 phi1 5)) phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (-.f64 (sin.f64 phi2) (*.f64 lambda1 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 1/2))) (cos.f64 lambda2))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda1 (+.f64 (*.f64 1/2 (*.f64 lambda1 (cos.f64 lambda2))) (neg.f64 (sin.f64 lambda2)))) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 -1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 (neg.f64 (*.f64 -1/6 (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 1/2))) (*.f64 (pow.f64 lambda1 3) (*.f64 1/6 (sin.f64 lambda2)))))) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 1/2 (cos.f64 lambda2)) (*.f64 (*.f64 1/6 (sin.f64 lambda2)) lambda1))) (-.f64 (*.f64 (neg.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 lambda1)) (sin.f64 phi2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (-.f64 (sin.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (fma.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 lambda2)) -1)))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 -1 (*.f64 1/2 (*.f64 lambda2 lambda2)))))))
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (fma.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 3)) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (fma.f64 -1 lambda2 (*.f64 1/6 (pow.f64 lambda2 3))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 lambda2)) -1)))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)) (*.f64 (cos.f64 lambda1) (+.f64 -1 (*.f64 1/2 (*.f64 lambda2 lambda2)))))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))

localize57.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.1b
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
0.2b
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 101 to 18 computations (82.2% saved)

series33.0ms (0%)

Counts
3 → 100
Calls

27 calls:

TimeVariablePointExpression
3.0ms
phi2
@inf
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
3.0ms
phi1
@inf
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
3.0ms
lambda2
@0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
2.0ms
lambda2
@-inf
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
2.0ms
lambda2
@inf
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))

rewrite111.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
781×associate-*r/
627×associate-*l/
273×associate-+l+
193×add-sqr-sqrt-binary64
191×*-un-lft-identity-binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01640
135338
2506238
Stop Event
node limit
Counts
3 → 160
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 1) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) 1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2) (*.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 2) (*.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 2) (cbrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)) (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 2)) (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (/.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (/.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))))) (-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) 3)) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2))) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (neg.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (neg.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi2 phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))) (-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)) (cbrt.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi2 phi1))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (neg.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) 1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) 1) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 1) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))))) 1) (-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) 3)) 1) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (-.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (*.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (*.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (cos.f64 phi2)) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (cos.f64 phi2)) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 3) (pow.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 2) (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2)) (cbrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (sqrt.f64 (cos.f64 phi2))) (sqrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi2 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi2 phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi2 phi1))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2) (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2)) (cbrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (cos.f64 phi2))) (sqrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (-.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))))) (+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (neg.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2) (cbrt.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.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)))) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) 3)) (cos.f64 phi2)) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))))) 1) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2)) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2)))) (*.f64 (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))))) 1/2) (-.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) 3) (pow.f64 (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) 3)) 1/2) (+.f64 (*.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2)))) (-.f64 (*.f64 (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))))

simplify132.0ms (0.2%)

Algorithm
egg-herbie
Rules
492×*-commutative
490×associate-+r-
471×+-commutative
433×distribute-lft-in
423×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01582193
14832012
216221858
333831771
476851771
Stop Event
node limit
Counts
260 → 229
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (cos.f64 phi2) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
Outputs
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 phi2 phi2))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) -1/2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 phi2 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (sin.f64 phi1)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 phi2 phi2))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 1/24 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) -1/2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2))))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 phi2 phi2))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
(fma.f64 1/24 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) -1/2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))))
(+.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
(fma.f64 1/120 (*.f64 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))))
(fma.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (fma.f64 1/120 (*.f64 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2))) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
(+.f64 (fma.f64 -1/6 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))) (*.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(fma.f64 -1/5040 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (*.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (+.f64 phi1 (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2)))) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (pow.f64 lambda2 3))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1))) (+.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (sin.f64 phi1))
(fma.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 phi2 phi2) (sin.f64 phi1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) -1/2))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (sin.f64 phi1)) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) -1/720))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(*.f64 (cos.f64 phi2) phi1)
(*.f64 phi1 (cos.f64 phi2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 phi1 (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (+.f64 phi1 (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2))))))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) -1/6))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) lambda2)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) lambda2)))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 3) 1/6) (neg.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 (pow.f64 lambda2 3) 1/6) lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 (pow.f64 lambda2 3) 1/6) lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(fma.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))
(fma.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(fma.f64 -1/720 (*.f64 (pow.f64 phi2 6) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))
(fma.f64 -1/720 (*.f64 (pow.f64 phi2 6) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))

localize60.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
0.2b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 107 to 26 computations (75.7% saved)

series10.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
1.0ms
lambda2
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
1.0ms
phi2
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
1.0ms
lambda2
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
1.0ms
phi1
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))

rewrite91.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
975×pow1-binary64
896×add-exp-log-binary64
896×expm1-log1p-u-binary64
896×log1p-expm1-u-binary64
97×add-sqr-sqrt-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
118313
2235013
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (*.f64 (cbrt.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) 2) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2)) (cbrt.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (cos.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 lambda2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 lambda2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))))

simplify144.0ms (0.2%)

Algorithm
egg-herbie
Rules
874×distribute-lft-out
640×distribute-rgt-in
528×sqr-pow
446×fma-def
374×unswap-sqr
Iterations

Useful iterations: 9 (0.0ms)

IterNodesCost
071726
1207697
2678632
32220597
43472595
54931595
65771595
76085595
86429595
96838590
Stop Event
node limit
Counts
73 → 60
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
Outputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (cos.f64 lambda2)) (fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (pow.f64 phi1 5)))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3))) (fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (cos.f64 lambda2)) (fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (fma.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (pow.f64 phi1 7)) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3))) (fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 -1/5040 (pow.f64 phi1 7) (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7)))) phi1))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 phi1 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (+.f64 phi1 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 phi2 phi2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(fma.f64 (cos.f64 lambda2) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 (*.f64 phi2 (cos.f64 lambda2))) -1/2)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 phi2 (*.f64 phi2 -1/2)))))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 phi2 phi2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4))) (fma.f64 (cos.f64 lambda2) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 (*.f64 phi2 (cos.f64 lambda2))) -1/2))))
(fma.f64 (cos.f64 lambda2) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (*.f64 phi2 (*.f64 phi2 (cos.f64 lambda2))) (+.f64 -1/2 (*.f64 (*.f64 phi2 phi2) 1/24))) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))))))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (+.f64 1 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6))) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 phi2 phi2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6))) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4))) (fma.f64 (cos.f64 lambda2) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 (*.f64 phi2 (cos.f64 lambda2))) -1/2)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) 1) (cos.f64 lambda2)) (*.f64 (*.f64 phi2 (*.f64 phi2 (cos.f64 lambda2))) (+.f64 -1/2 (*.f64 (*.f64 phi2 phi2) 1/24)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/720 (pow.f64 phi2 6))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda2 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))
(*.f64 (sin.f64 phi1) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda2 lambda2)) (fma.f64 (cos.f64 phi2) (sin.f64 phi1) (*.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda2))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) 1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 1/24 (pow.f64 lambda2 4) 1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (fma.f64 1/24 (pow.f64 lambda2 4) 1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda2 lambda2)) (fma.f64 (cos.f64 phi2) (sin.f64 phi1) (fma.f64 1/24 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 lambda2 4)) (*.f64 -1/720 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 lambda2 6))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/720 (pow.f64 lambda2 6)))))
(fma.f64 (cos.f64 phi2) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 -1/720 (pow.f64 lambda2 6) (*.f64 1/24 (pow.f64 lambda2 4))) (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/720 (pow.f64 lambda2 6)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/720 (pow.f64 lambda2 6))) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (fma.f64 -1/720 (pow.f64 lambda2 6) (*.f64 1/24 (pow.f64 lambda2 4))) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))

localize60.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)
0.6b
(cbrt.f64 (sin.f64 phi2))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 130 to 31 computations (76.2% saved)

series7.0ms (0%)

Counts
2 → 16
Calls

6 calls:

TimeVariablePointExpression
2.0ms
phi2
@inf
(cbrt.f64 (sin.f64 phi2))
2.0ms
phi2
@-inf
(cbrt.f64 (sin.f64 phi2))
1.0ms
phi2
@0
(cbrt.f64 (sin.f64 phi2))
1.0ms
phi2
@0
(pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)
1.0ms
phi2
@inf
(pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)

rewrite57.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
469×pow1-binary64
453×add-sqr-sqrt-binary64
443×*-un-lft-identity-binary64
435×add-exp-log-binary64
435×expm1-log1p-u-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
111913
2128313
Stop Event
node limit
Counts
2 → 42
Calls
Call 1
Inputs
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cbrt.f64 (sin.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2) (cbrt.f64 (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 phi2) 1/6) (pow.f64 (sin.f64 phi2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 1/3) (pow.f64 (sqrt.f64 (sin.f64 phi2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 phi2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 phi2) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (sin.f64 phi2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 phi2)) (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi2)) (pow.f64 (sin.f64 phi2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 phi2) 1/6) (*.f64 (pow.f64 (sin.f64 phi2) 1/6) (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sin.f64 phi2)) (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2)) (cbrt.f64 (cbrt.f64 (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 phi2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 phi2))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 phi2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (cbrt.f64 (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)))))))

simplify145.0ms (0.2%)

Algorithm
egg-herbie
Rules
1452×sqr-pow
726×cube-prod
663×pow-sqr
472×fabs-mul
349×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08104
121104
235104
361104
4128104
5315104
61051104
71298104
81539104
91859104
102283104
112900104
123706104
134164104
144608104
154860104
165032104
175140104
186042104
197282104
Stop Event
node limit
Counts
58 → 42
Calls
Call 1
Inputs
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (sin.f64 phi2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
Outputs
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (sin.f64 phi2) 1/3)
(cbrt.f64 (sin.f64 phi2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))
(pow.f64 (pow.f64 (sin.f64 phi2) 2) 1/3)
(cbrt.f64 (pow.f64 (sin.f64 phi2) 2))

eval864.0ms (1.3%)

Compiler

Compiled 51073 to 10205 computations (80% saved)

prune547.0ms (0.8%)

Pruning

98 alts after pruning (98 fresh and 0 done)

PrunedKeptTotal
New1303581361
Fresh354075
Picked101
Done404
Total1343981441
Error
0.0b
Counts
1441 → 98
Alt Table
Click to see full alt table
StatusErrorProgram
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
35.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
32.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
36.8b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (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.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
23.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
32.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
8.7b
(atan2.f64 (*.f64 (/.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)))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
13.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
19.5b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
10.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
25.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
32.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
23.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
10.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
10.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
24.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
31.8b
(atan2.f64 (*.f64 (sin.f64 (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)))))
35.4b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
13.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.9b
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
39.2b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
38.0b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
27.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
38.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
41.2b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.6b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
36.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
25.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
33.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
24.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
25.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
32.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
37.7b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
21.5b
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
38.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
18.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
52.7b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
28.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
13.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
5.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
10.9b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
28.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
33.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
31.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
11.5b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
29.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
6.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
13.8b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
44.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
21.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
11.1b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
27.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
22.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
11.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
19.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
21.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
16.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
31.8b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (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)))))
6.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1))) (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))))))
24.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
33.8b
(atan2.f64 (*.f64 (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)))))
5.2b
(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)))))
13.3b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (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.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.4b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 6008 to 3886 computations (35.3% saved)

localize48.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Compiler

Compiled 181 to 25 computations (86.2% saved)

series9.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
5.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
1.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.0ms
lambda1
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.0ms
lambda2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.0ms
phi2
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))

rewrite66.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
380×distribute-rgt-in
357×distribute-lft-in
344×associate-*r/
299×associate-*l/
171×add-sqr-sqrt-binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01726
132816
2417816
Stop Event
node limit
Counts
1 → 67
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.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 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 1 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2))) (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)) (cbrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (cos.f64 (-.f64 lambda1 lambda2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))

simplify133.0ms (0.2%)

Algorithm
egg-herbie
Rules
950×fma-def
902×unswap-sqr
766×distribute-lft-out
494×+-commutative
476×*-commutative
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
01011695
13421622
213501442
337571442
446581442
552611442
657641442
769901442
871121376
Stop Event
node limit
Counts
115 → 103
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
Outputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 5)))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (fma.f64 -1/6 (pow.f64 phi1 3) (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 7)) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 5))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (fma.f64 -1/6 (pow.f64 phi1 3) (*.f64 1/120 (pow.f64 phi1 5))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2))))
(fma.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (sin.f64 phi1))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2)))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (sin.f64 phi1))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2))) (+.f64 (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) -1/2)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))) (fma.f64 -1/6 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 -1/6 (*.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 phi2))))
(fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))

localize20.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.1b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 35 to 10 computations (71.4% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
lambda1
@0
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
lambda1
@-inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
lambda2
@-inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
phi2
@inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
lambda2
@inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))

rewrite53.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
529×*-commutative
312×swap-sqr
311×associate-*r/
292×distribute-lft-in
288×distribute-rgt-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01016
121916
2299016
Stop Event
node limit
Counts
1 → 18
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2) (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))))

simplify33.0ms (0%)

Algorithm
egg-herbie
Rules
83×fma-def
52×associate-*r*
31×distribute-lft-in
29×*-commutative
28×associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
022576
141576
270576
3114576
4197576
5293576
6335576
7417576
8566576
9574576
Stop Event
saturated
Counts
54 → 21
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))

localize41.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 phi2) phi1)
0.1b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 95 to 17 computations (82.1% saved)

series12.0ms (0%)

Counts
2 → 52
Calls

18 calls:

TimeVariablePointExpression
1.0ms
phi1
@0
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
1.0ms
phi1
@inf
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
1.0ms
lambda2
@inf
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
1.0ms
phi2
@0
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
1.0ms
lambda2
@-inf
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))

rewrite82.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
411×associate-*r/
402×distribute-rgt-in
382×distribute-lft-in
324×associate-*l/
150×associate-+l+
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01225
125223
2342923
Stop Event
node limit
Counts
2 → 139
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) phi1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 1) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) phi1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 1)) (*.f64 1 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 phi1 (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 phi1 (*.f64 lambda1 (sin.f64 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 phi1 (*.f64 lambda1 (sin.f64 lambda2))) (cos.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 1) 1) (*.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2) (*.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) (+.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2)) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) (+.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2)) (*.f64 (cos.f64 lambda2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2) (*.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 2) (cbrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) phi1)) (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) (sqrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)) (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) phi1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2)) (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (sqrt.f64 (*.f64 (cos.f64 phi2) phi1))) (sqrt.f64 (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (-.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (-.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (+.f64 (pow.f64 (pow.f64 (cos.f64 lambda2) 2) 3) (pow.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) 3))) (+.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 (cos.f64 lambda2) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) (-.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) (-.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) (+.f64 (pow.f64 (pow.f64 (cos.f64 lambda2) 2) 3) (pow.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) 3))) (+.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 (cos.f64 lambda2) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) phi1) (/.f64 1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (/.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (/.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 3)) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2))) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (neg.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (neg.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1))) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2)))))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 3))) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)) (cbrt.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (pow.f64 (cbrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) 2)) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (cos.f64 phi2) phi1)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (*.f64 (cos.f64 phi2) phi1)) (neg.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (*.f64 (cos.f64 phi2) phi1)) (neg.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) 1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) 1) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) 1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) 1) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))))) 1) (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) 3)) 1) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (*.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (*.f64 (sqrt.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 phi1 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (cos.f64 phi2)) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 phi1 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (cos.f64 phi2)) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) 1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (*.f64 (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))) (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2))) (+.f64 (sqrt.f64 (*.f64 lambda1 (sin.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)))) (-.f64 (sqrt.f64 (cos.f64 lambda2)) (sqrt.f64 (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) 1) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) 1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) (*.f64 (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))) (cbrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (sqrt.f64 (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 2)) (*.f64 (cos.f64 phi2) phi1)) (+.f64 (sqrt.f64 (*.f64 lambda1 (sin.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)))) (-.f64 (sqrt.f64 (cos.f64 lambda2)) (sqrt.f64 (*.f64 lambda1 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) 1) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))) (cbrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3)) (*.f64 (cos.f64 phi2) phi1)) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (sqrt.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 phi2) phi1) 3) (pow.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 phi2) phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) phi1) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 lambda1 (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi2) phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) phi1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 phi1 (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) phi1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 phi2) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2) (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 phi1) 2) (*.f64 (cbrt.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) phi1)) (sqrt.f64 (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 phi1) (*.f64 (sqrt.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 phi1) 2)) (cbrt.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 phi1)) (sqrt.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 phi1 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2)) (cbrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 phi1 (sqrt.f64 (cos.f64 phi2))) (sqrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi2) phi1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) phi1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) phi1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) phi1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) phi1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) phi1))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) phi1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) phi1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 phi1 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 phi1 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi2) phi1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) phi1)))))))

simplify148.0ms (0.2%)

Algorithm
egg-herbie
Rules
1045×distribute-lft-in
495×fma-def
418×associate-+r+
372×associate-+l+
340×associate-*r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0741114
12121009
2688941
32364913
45473913
55962913
66090913
76270913
86469913
96713913
Stop Event
node limit
Counts
191 → 168
Calls
Call 1
Inputs
(*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 1/24 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 1/24 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4)))) (*.f64 -1/720 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 6)))))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (cos.f64 phi2))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1))) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1))) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (cos.f64 phi2))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (cos.f64 phi2)))))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
phi1
(+.f64 phi1 (*.f64 -1/2 (*.f64 phi1 (pow.f64 phi2 2))))
(+.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 phi1 (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4)))))
(+.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 phi1 (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 phi1 (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4))))))
Outputs
(*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 phi2 phi2))) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))) (*.f64 (*.f64 phi2 phi2) -1/2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 1/24 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4))))))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 phi2 phi2))) (fma.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 1/24 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4))))))
(fma.f64 -1/2 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (fma.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))) (*.f64 (pow.f64 phi2 4) 1/24))))
(fma.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 phi1 (*.f64 1/24 (pow.f64 phi2 4)) (fma.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)) phi1)))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 2)))) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 1/24 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4)))) (*.f64 -1/720 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 6)))))))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 phi2 phi2))) (fma.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (fma.f64 1/24 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 4))) (*.f64 -1/720 (*.f64 phi1 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (pow.f64 phi2 6)))))))
(fma.f64 -1/2 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (fma.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 1/24 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (pow.f64 phi2 4))) (*.f64 phi1 (*.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (pow.f64 phi2 6)) -1/720)))))
(+.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) phi1)) (*.f64 (*.f64 phi1 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (+.f64 phi1 (*.f64 phi1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6)))))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (cos.f64 phi2))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1))) (*.f64 phi1 (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 phi1 (*.f64 lambda2 lambda1) phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1))) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (cos.f64 phi2))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1)) (fma.f64 phi1 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) phi1) (cos.f64 phi2)))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda2 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (cos.f64 phi2)))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1)) (fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2)))) (fma.f64 phi1 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) phi1) (cos.f64 phi2))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 lambda1)) (fma.f64 -1/6 (*.f64 phi1 (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (pow.f64 lambda2 3))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 phi1 (cos.f64 phi2)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 lambda1 (*.f64 phi1 (cos.f64 phi2))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (+.f64 1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1))) (*.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 phi1 (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 phi1 (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (cos.f64 phi2))
(*.f64 phi1 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
phi1
(+.f64 phi1 (*.f64 -1/2 (*.f64 phi1 (pow.f64 phi2 2))))
(+.f64 phi1 (*.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2))))
(fma.f64 (*.f64 phi1 -1/2) (*.f64 phi2 phi2) phi1)
(fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) phi1)
(fma.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)) phi1)
(+.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 phi1 (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4)))))
(+.f64 phi1 (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4)))))
(+.f64 phi1 (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) (*.f64 phi1 (*.f64 (pow.f64 phi2 4) 1/24))))
(fma.f64 phi1 (*.f64 1/24 (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) phi1))
(fma.f64 phi1 (*.f64 1/24 (pow.f64 phi2 4)) (fma.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)) phi1))
(+.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 phi1 (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 phi1 (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4))))))
(+.f64 phi1 (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 phi1 (pow.f64 phi2 6)) (*.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4))))))
(+.f64 phi1 (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 phi1 (pow.f64 phi2 4)) (*.f64 phi1 (*.f64 (pow.f64 phi2 6) -1/720)))))
(+.f64 (*.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6)))) (fma.f64 phi1 (*.f64 1/24 (pow.f64 phi2 4)) phi1))
(+.f64 phi1 (*.f64 phi1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6))))))

localize50.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.2b
(sin.f64 (+.f64 phi1 phi2))
3.4b
(sin.f64 (-.f64 phi1 phi2))
4.2b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 135 to 32 computations (76.3% saved)

series4.0ms (0%)

Counts
2 → 32
Calls

12 calls:

TimeVariablePointExpression
1.0ms
phi1
@0
(sin.f64 (-.f64 phi1 phi2))
0.0ms
phi2
@0
(sin.f64 (-.f64 phi1 phi2))
0.0ms
phi1
@0
(sin.f64 (+.f64 phi1 phi2))
0.0ms
phi2
@0
(sin.f64 (+.f64 phi1 phi2))
0.0ms
phi1
@-inf
(sin.f64 (-.f64 phi1 phi2))

rewrite67.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
965×pow1-binary64
895×add-exp-log-binary64
895×expm1-log1p-u-binary64
895×log1p-expm1-u-binary64
880×add-log-exp-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
116012
2226312
Stop Event
node limit
Counts
2 → 48
Calls
Call 1
Inputs
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (+.f64 phi1 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 phi1 phi2)) (fma.f64 (neg.f64 (sin.f64 phi2)) (cos.f64 phi1) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (neg.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (neg.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 phi2))) (*.f64 (cos.f64 phi1) (sin.f64 (neg.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 (-.f64 phi1 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 phi1 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (-.f64 phi1 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (-.f64 phi1 phi2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 phi1 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 phi1 phi2))) 2) (cbrt.f64 (sin.f64 (-.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 phi1 phi2))) (sqrt.f64 (sin.f64 (-.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (sin.f64 (+.f64 phi1 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (-.f64 phi1 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (-.f64 phi1 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 phi1 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (-.f64 phi1 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 phi1 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (-.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (-.f64 phi1 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (-.f64 phi1 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (-.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (-.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (-.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (cos.f64 phi2) (neg.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 1) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (+.f64 phi1 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (+.f64 phi1 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (+.f64 phi1 phi2))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 phi1 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 phi1 phi2))) 2) (cbrt.f64 (sin.f64 (+.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (+.f64 phi1 phi2))) (sqrt.f64 (sin.f64 (+.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (sin.f64 (-.f64 phi1 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (-.f64 (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (+.f64 phi1 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (+.f64 phi1 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (+.f64 phi1 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (+.f64 phi1 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (+.f64 phi1 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (+.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (+.f64 phi1 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (+.f64 phi1 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (+.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (+.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (+.f64 phi1 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (cos.f64 phi2) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))

simplify61.0ms (0.1%)

Algorithm
egg-herbie
Rules
620×associate-+l-
441×+-commutative
429×*-commutative
395×distribute-neg-in
358×fma-def
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
063436
1193378
2531353
31789351
45016351
Stop Event
node limit
Counts
80 → 81
Calls
Call 1
Inputs
(sin.f64 (neg.f64 phi2))
(+.f64 (*.f64 (cos.f64 (neg.f64 phi2)) phi1) (sin.f64 (neg.f64 phi2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 phi2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 phi2)) phi1) (sin.f64 (neg.f64 phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 phi2)))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 phi2)) (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 (neg.f64 phi2)) phi1) (sin.f64 (neg.f64 phi2)))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1 (*.f64 (cos.f64 phi1) phi2)))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi1) phi2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi1) phi2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(sin.f64 phi2)
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 phi1)
(+.f64 (*.f64 (cos.f64 phi1) phi2) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
Outputs
(sin.f64 (neg.f64 phi2))
(neg.f64 (sin.f64 phi2))
(+.f64 (*.f64 (cos.f64 (neg.f64 phi2)) phi1) (sin.f64 (neg.f64 phi2)))
(fma.f64 (cos.f64 phi2) phi1 (neg.f64 (sin.f64 phi2)))
(-.f64 (*.f64 (cos.f64 phi2) phi1) (sin.f64 phi2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 phi2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 phi2)) phi1) (sin.f64 (neg.f64 phi2))))
(fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 phi2)) (*.f64 phi1 phi1)) (fma.f64 (cos.f64 phi2) phi1 (neg.f64 (sin.f64 phi2))))
(-.f64 (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi1 (neg.f64 (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) phi1)) (sin.f64 phi2))
(fma.f64 (cos.f64 phi2) phi1 (*.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (neg.f64 (sin.f64 phi2))))
(-.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 phi2)))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 phi2)) (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 (neg.f64 phi2)) phi1) (sin.f64 (neg.f64 phi2)))))
(fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 phi2)) (*.f64 phi1 phi1)) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 (cos.f64 phi2) phi1 (neg.f64 (sin.f64 phi2)))))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 phi1 (neg.f64 (sin.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)) (sin.f64 phi2)))
(fma.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (neg.f64 (sin.f64 phi2))))
(-.f64 (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)) (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) phi2)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1 (*.f64 (cos.f64 phi1) phi2)))
(+.f64 (sin.f64 phi1) (neg.f64 (*.f64 phi2 (cos.f64 phi1))))
(-.f64 (sin.f64 phi1) (*.f64 phi2 (cos.f64 phi1)))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi1) phi2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (sin.f64 phi1) (fma.f64 -1 (*.f64 phi2 (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)))))
(+.f64 (*.f64 (cos.f64 phi1) (neg.f64 phi2)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1)))
(+.f64 (sin.f64 phi1) (*.f64 phi2 (-.f64 (*.f64 phi2 (*.f64 -1/2 (sin.f64 phi1))) (cos.f64 phi1))))
(+.f64 (sin.f64 phi1) (*.f64 phi2 (fma.f64 (sin.f64 phi1) (*.f64 phi2 -1/2) (neg.f64 (cos.f64 phi1)))))
(+.f64 (sin.f64 phi1) (*.f64 phi2 (fma.f64 phi2 (*.f64 -1/2 (sin.f64 phi1)) (neg.f64 (cos.f64 phi1)))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi1) phi2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))))
(fma.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (+.f64 (sin.f64 phi1) (fma.f64 -1 (*.f64 phi2 (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) -1/2)) (*.f64 phi2 (cos.f64 phi1))) (fma.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (sin.f64 phi1)))
(+.f64 (*.f64 phi2 (-.f64 (*.f64 phi2 (*.f64 -1/2 (sin.f64 phi1))) (cos.f64 phi1))) (fma.f64 (cos.f64 phi1) (*.f64 1/6 (pow.f64 phi2 3)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2)))) (*.f64 (cos.f64 phi1) (-.f64 phi2 (*.f64 1/6 (pow.f64 phi2 3)))))
(+.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 (*.f64 -1/2 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (-.f64 (*.f64 1/6 (pow.f64 phi2 3)) phi2))))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 (+.f64 (*.f64 -1 phi2) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 phi2)))
(sin.f64 (-.f64 phi1 phi2))
(sin.f64 phi2)
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 (cos.f64 phi2) phi1) (sin.f64 phi2))
(fma.f64 (cos.f64 phi2) phi1 (sin.f64 phi2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1)))
(fma.f64 -1/2 (*.f64 (*.f64 phi1 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) phi1) (sin.f64 phi2)))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 phi1 (sin.f64 phi2))) (fma.f64 (cos.f64 phi2) phi1 (sin.f64 phi2)))
(fma.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 -1/2 (*.f64 (*.f64 phi1 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) phi1) (sin.f64 phi2))))
(+.f64 (*.f64 (+.f64 (*.f64 (*.f64 -1/2 phi1) phi1) 1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(fma.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (sin.f64 phi2) (*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 phi1 3) phi1)))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 (-.f64 phi2 (*.f64 -1 phi1)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 phi1)
(+.f64 (*.f64 (cos.f64 phi1) phi2) (sin.f64 phi1))
(fma.f64 (cos.f64 phi1) phi2 (sin.f64 phi1))
(fma.f64 phi2 (cos.f64 phi1) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (fma.f64 (cos.f64 phi1) phi2 (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))
(fma.f64 phi2 (cos.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (*.f64 phi2 (*.f64 phi2 -1/2)) (fma.f64 phi2 (cos.f64 phi1) (sin.f64 phi1)))
(fma.f64 phi2 (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (+.f64 (fma.f64 (cos.f64 phi1) phi2 (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 phi2 (cos.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2)))) (*.f64 (cos.f64 phi1) (-.f64 phi2 (*.f64 1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2)))) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))
(sin.f64 (-.f64 phi1 (*.f64 -1 phi2)))
(sin.f64 (-.f64 phi2 (neg.f64 phi1)))
(sin.f64 (+.f64 phi2 phi1))

localize44.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
0.3b
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
3.9b
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
4.4b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 126 to 38 computations (69.8% saved)

series5.0ms (0%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda1
@0
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
1.0ms
lambda2
@0
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
0.0ms
lambda1
@-inf
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
0.0ms
lambda2
@-inf
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
0.0ms
lambda1
@inf
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)

rewrite60.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
845×pow1-binary64
787×add-exp-log-binary64
786×expm1-log1p-u-binary64
786×log1p-expm1-u-binary64
773×add-log-exp-binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
118015
2207715
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.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)))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.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))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (-.f64 lambda1 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))))

simplify52.0ms (0.1%)

Algorithm
egg-herbie
Rules
485×fma-def
456×distribute-lft-neg-out
430×associate-+r+
428×associate-*r*
401×associate-+l+
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
087633
1264585
2824555
33225546
Stop Event
node limit
Counts
93 → 87
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(pow.f64 (sin.f64 (neg.f64 lambda2)) 2)
(+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))
(+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))) (+.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (pow.f64 lambda1 2)) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)))
(+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))) (+.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2))))) (pow.f64 lambda1 3)))))
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 lambda1) 2)
(+.f64 (*.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (pow.f64 (sin.f64 lambda1) 2))
(+.f64 (*.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (pow.f64 lambda2 2))))
(+.f64 (*.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 1/3 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (pow.f64 lambda2 3)) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (pow.f64 lambda2 2)))))
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
Outputs
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (sin.f64 (neg.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (sin.f64 (neg.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)))) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2)) (-.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(-.f64 (fma.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (fma.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (cos.f64 lambda1) (fma.f64 lambda2 -1 (*.f64 1/6 (pow.f64 lambda2 3))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(pow.f64 (sin.f64 (neg.f64 lambda2)) 2)
(*.f64 (sin.f64 lambda2) (sin.f64 lambda2))
(+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))
(fma.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))
(fma.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(fma.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -2 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 2)) (sin.f64 lambda2)))
(+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))) (+.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (pow.f64 lambda1 2)) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)))
(fma.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (fma.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (*.f64 lambda1 lambda1) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)))
(fma.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (fma.f64 (*.f64 lambda1 lambda1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda2) (*.f64 lambda1 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -2 (sin.f64 lambda2))) (*.f64 lambda1 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (+.f64 1 (*.f64 lambda1 (neg.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -2 (sin.f64 lambda2)))))
(+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))) (+.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 (neg.f64 lambda2)) 2) (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2))))) (pow.f64 lambda1 3)))))
(fma.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (+.f64 (fma.f64 (+.f64 (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (*.f64 lambda1 lambda1) (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (*.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2)) -4/3))))
(fma.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (fma.f64 (*.f64 lambda1 lambda1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (fma.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2)) -4/3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) (+.f64 (*.f64 (pow.f64 lambda1 3) -4/3) (*.f64 lambda1 2))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 lambda1 (+.f64 (*.f64 lambda1 (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2) (pow.f64 (cos.f64 lambda2) 2))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) (+.f64 (*.f64 -4/3 (*.f64 lambda1 lambda1)) 2)))))
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 lambda1) 2)
(+.f64 (*.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (pow.f64 (sin.f64 lambda1) 2))
(fma.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2))
(*.f64 (sin.f64 lambda1) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 -2))))
(*.f64 (sin.f64 lambda1) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 (cos.f64 lambda1)) -2)))
(+.f64 (*.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (pow.f64 lambda2 2))))
(+.f64 (fma.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 -1 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (cos.f64 lambda1) 2))))
(fma.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (sin.f64 lambda1) 2)))
(fma.f64 lambda2 (*.f64 lambda2 (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (sin.f64 lambda1) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 -2)))))
(fma.f64 lambda2 (*.f64 lambda2 (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (sin.f64 lambda1) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 (cos.f64 lambda1)) -2))))
(+.f64 (*.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 1/3 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (pow.f64 lambda2 3)) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (pow.f64 lambda2 2)))))
(+.f64 (fma.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (fma.f64 (*.f64 4/3 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 lambda2 3) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 -1 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (cos.f64 lambda1) 2)))))
(+.f64 (fma.f64 -2 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (pow.f64 lambda2 3) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) 4/3))))
(fma.f64 lambda2 (*.f64 (*.f64 -2 (sin.f64 lambda1)) (cos.f64 lambda1)) (fma.f64 lambda2 (*.f64 lambda2 (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))) (fma.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) 4/3)) (pow.f64 (sin.f64 lambda1) 2))))
(+.f64 (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (+.f64 (*.f64 lambda2 -2) (*.f64 (pow.f64 lambda2 3) 4/3))))
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)

eval487.0ms (0.7%)

Compiler

Compiled 40698 to 8947 computations (78% saved)

prune326.0ms (0.5%)

Pruning

116 alts after pruning (115 fresh and 1 done)

PrunedKeptTotal
New1075391114
Fresh177693
Picked101
Done314
Total10961161212
Error
0.0b
Counts
1212 → 116
Alt Table
Click to see full alt table
StatusErrorProgram
54.2b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
42.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
32.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
24.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
20.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
35.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
23.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
31.9b
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
30.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
42.9b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
38.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
8.7b
(atan2.f64 (*.f64 (/.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)))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
46.3b
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
19.5b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
10.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
25.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
23.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
43.5b
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
10.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
10.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
24.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
31.8b
(atan2.f64 (*.f64 (sin.f64 (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)))))
35.4b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
34.0b
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
13.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
31.9b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
38.8b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
36.9b
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
24.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
38.0b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
27.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
36.5b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
38.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
34.7b
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
10.8b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
38.1b
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
41.6b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
38.3b
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
25.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
33.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
24.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
39.4b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
25.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
46.1b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
38.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
46.3b
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
37.7b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
42.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
22.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
47.3b
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
46.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
41.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
28.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
13.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
5.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
10.9b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
43.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
33.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
13.2b
(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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
32.5b
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
46.1b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
29.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
11.5b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
6.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
36.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
44.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
21.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
11.1b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
5.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
44.1b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
27.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
11.7b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
5.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
32.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
19.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
47.5b
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
21.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
18.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
16.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
31.8b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (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)))))
6.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1))) (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))))))
5.2b
(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)))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
24.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
45.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
37.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
33.8b
(atan2.f64 (*.f64 (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)))))
13.3b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (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.4b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 3279 to 2155 computations (34.3% saved)

regimes1.1s (1.6%)

Counts
204 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.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) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.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 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1))) (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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3)) (*.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 (*.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)))) (+.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 (/.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)))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.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) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
Calls

7 calls:

154.0ms
phi2
150.0ms
lambda2
142.0ms
phi1
136.0ms
(-.f64 lambda1 lambda2)
132.0ms
lambda1
Results
ErrorSegmentsBranch
0.2b1lambda1
0.2b1lambda2
0.2b1phi1
0.2b1phi2
0.2b1(atan2.f64 (*.f64 (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)))))
0.2b1(-.f64 lambda1 lambda2)
0.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5458 to 1019 computations (81.3% saved)

regimes1.2s (1.8%)

Counts
198 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.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) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.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 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda2)) (cos.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1))) (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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)) (*.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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

7 calls:

193.0ms
(-.f64 lambda1 lambda2)
189.0ms
(-.f64 lambda1 lambda2)
145.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)))))
137.0ms
phi2
133.0ms
phi1
Results
ErrorSegmentsBranch
0.2b1lambda1
0.2b1lambda2
0.2b1phi1
0.2b1phi2
0.2b1(atan2.f64 (*.f64 (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)))))
0.2b1(-.f64 lambda1 lambda2)
0.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5113 to 977 computations (80.9% saved)

regimes1.2s (1.8%)

Counts
193 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.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) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.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 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
Calls

7 calls:

239.0ms
phi1
207.0ms
lambda1
185.0ms
lambda2
147.0ms
phi2
120.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
0.2b1lambda1
0.2b1lambda2
0.2b1phi1
0.2b1phi2
0.2b1(atan2.f64 (*.f64 (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)))))
0.2b1(-.f64 lambda1 lambda2)
0.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4917 to 945 computations (80.8% saved)

regimes1.5s (2.2%)

Counts
189 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.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) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
Calls

7 calls:

264.0ms
(-.f64 lambda1 lambda2)
211.0ms
(-.f64 lambda1 lambda2)
208.0ms
phi1
189.0ms
phi2
158.0ms
lambda1
Results
ErrorSegmentsBranch
0.2b1lambda1
0.2b1lambda2
0.2b1phi1
0.2b1phi2
0.2b1(atan2.f64 (*.f64 (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)))))
0.2b1(-.f64 lambda1 lambda2)
0.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4759 to 924 computations (80.6% saved)

regimes1.7s (2.5%)

Counts
187 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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)) (fma.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)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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

7 calls:

478.0ms
phi2
242.0ms
phi1
189.0ms
(-.f64 lambda1 lambda2)
181.0ms
(-.f64 lambda1 lambda2)
181.0ms
lambda2
Results
ErrorSegmentsBranch
5.2b1lambda1
5.2b1lambda2
5.2b1phi1
2.4b3phi2
5.2b1(atan2.f64 (*.f64 (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)))))
5.2b1(-.f64 lambda1 lambda2)
5.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4683 to 919 computations (80.4% saved)

bsearch534.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
262.0ms
3.3152388756327223e-9
1.8192572286120273e-7
269.0ms
-2838413535.2810926
-873.4080055536418
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.8s (2.7%)

Counts
185 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
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)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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

7 calls:

608.0ms
phi2
217.0ms
(-.f64 lambda1 lambda2)
191.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)))))
181.0ms
lambda2
174.0ms
lambda1
Results
ErrorSegmentsBranch
5.2b1lambda1
5.2b1lambda2
5.2b1phi1
2.4b3phi2
5.2b1(atan2.f64 (*.f64 (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)))))
5.2b1(-.f64 lambda1 lambda2)
5.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4615 to 911 computations (80.3% saved)

bsearch826.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
412.0ms
3.3152388756327223e-9
1.8192572286120273e-7
409.0ms
-2838413535.2810926
-873.4080055536418
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.4s (2%)

Counts
181 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))) (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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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

7 calls:

228.0ms
(-.f64 lambda1 lambda2)
176.0ms
(-.f64 lambda1 lambda2)
170.0ms
phi2
168.0ms
lambda2
160.0ms
lambda1
Results
ErrorSegmentsBranch
5.2b1lambda1
5.2b1lambda2
5.2b1phi1
5.2b1phi2
5.2b1(atan2.f64 (*.f64 (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)))))
5.2b1(-.f64 lambda1 lambda2)
5.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4456 to 876 computations (80.3% saved)

regimes1.3s (2%)

Counts
167 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.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)) (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 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (sqrt.f64 (pow.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.f64 (*.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 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1))) (*.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)) (*.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

7 calls:

225.0ms
phi1
176.0ms
(-.f64 lambda1 lambda2)
173.0ms
lambda2
173.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)))))
163.0ms
lambda1
Results
ErrorSegmentsBranch
5.2b1lambda1
5.2b1lambda2
5.2b1phi1
5.2b1phi2
5.2b1(atan2.f64 (*.f64 (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)))))
5.2b1(-.f64 lambda1 lambda2)
5.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3981 to 822 computations (79.4% saved)

regimes2.4s (3.6%)

Counts
157 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

386.0ms
lambda2
369.0ms
lambda1
325.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)))))
317.0ms
phi1
316.0ms
phi2
Results
ErrorSegmentsBranch
7.2b3lambda1
8.1b3lambda2
5.8b3phi1
9.6b3phi2
8.4b5(atan2.f64 (*.f64 (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)))))
8.0b3(-.f64 lambda1 lambda2)
8.0b3(-.f64 lambda1 lambda2)
Compiler

Compiled 3672 to 774 computations (78.9% saved)

bsearch536.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
248.0ms
9.452911611736827e-34
1.5855612524941518e-32
286.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.3s (3.5%)

Counts
155 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.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)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (cbrt.f64 (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

389.0ms
(-.f64 lambda1 lambda2)
357.0ms
phi2
348.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)))))
347.0ms
lambda2
315.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
7.3b3lambda1
8.3b3lambda2
6.1b3phi1
10.0b3phi2
9.6b4(atan2.f64 (*.f64 (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)))))
8.9b3(-.f64 lambda1 lambda2)
8.9b3(-.f64 lambda1 lambda2)
Compiler

Compiled 3613 to 768 computations (78.7% saved)

bsearch545.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
319.0ms
2.783393955628898e-32
3.4732483097148025e-24
224.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.1s (3.1%)

Counts
148 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (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)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.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 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (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 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
Calls

7 calls:

320.0ms
lambda2
311.0ms
phi2
310.0ms
(-.f64 lambda1 lambda2)
292.0ms
(-.f64 lambda1 lambda2)
246.0ms
lambda1
Results
ErrorSegmentsBranch
7.4b3lambda1
8.4b3lambda2
6.1b3phi1
10.0b3phi2
9.7b4(atan2.f64 (*.f64 (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)))))
9.1b3(-.f64 lambda1 lambda2)
9.1b3(-.f64 lambda1 lambda2)
Compiler

Compiled 3386 to 705 computations (79.2% saved)

bsearch414.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
203.0ms
9.452911611736827e-34
1.5855612524941518e-32
208.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.7s (2.6%)

Counts
134 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (neg.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (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 (exp.f64 (log.f64 (*.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 (log1p.f64 (expm1.f64 (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 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

327.0ms
phi1
291.0ms
lambda2
283.0ms
phi2
226.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)))))
207.0ms
lambda1
Results
ErrorSegmentsBranch
7.4b3lambda1
8.4b3lambda2
6.1b3phi1
10.0b3phi2
9.7b4(atan2.f64 (*.f64 (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)))))
10.1b2(-.f64 lambda1 lambda2)
10.1b2(-.f64 lambda1 lambda2)
Compiler

Compiled 3008 to 644 computations (78.6% saved)

bsearch409.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
197.0ms
9.452911611736827e-34
1.5855612524941518e-32
210.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.6s (2.3%)

Counts
129 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (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)))))
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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

285.0ms
lambda2
285.0ms
phi2
209.0ms
lambda1
206.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)))))
196.0ms
phi1
Results
ErrorSegmentsBranch
7.4b3lambda1
8.4b3lambda2
6.1b3phi1
10.0b3phi2
9.7b4(atan2.f64 (*.f64 (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)))))
10.1b2(-.f64 lambda1 lambda2)
10.1b2(-.f64 lambda1 lambda2)
Compiler

Compiled 2878 to 636 computations (77.9% saved)

bsearch412.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
198.0ms
9.452911611736827e-34
1.5855612524941518e-32
212.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.0s (2.9%)

Counts
126 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (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 lambda1))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 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)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

442.0ms
phi2
432.0ms
lambda2
281.0ms
lambda1
246.0ms
phi1
211.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
ErrorSegmentsBranch
7.4b3lambda1
8.4b3lambda2
6.1b3phi1
10.0b3phi2
9.7b4(atan2.f64 (*.f64 (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)))))
10.1b2(-.f64 lambda1 lambda2)
10.1b2(-.f64 lambda1 lambda2)
Compiler

Compiled 2803 to 627 computations (77.6% saved)

bsearch409.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
200.0ms
9.452911611736827e-34
1.5855612524941518e-32
206.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.2s (1.7%)

Counts
113 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (*.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 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi1 phi2))) 2) (*.f64 (*.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 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (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 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (-.f64 phi1 phi2)) (-.f64 (+.f64 1 (sin.f64 (+.f64 phi1 phi2))) 1)) (/.f64 2 (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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 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

6 calls:

357.0ms
lambda1
252.0ms
phi1
186.0ms
lambda2
142.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)))))
76.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
9.8b3lambda1
11.8b3lambda2
6.8b3phi1
13.0b1phi2
10.8b3(atan2.f64 (*.f64 (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)))))
13.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2452 to 575 computations (76.5% saved)

bsearch587.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
196.0ms
9.452911611736827e-34
1.5855612524941518e-32
389.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes859.0ms (1.3%)

Counts
90 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

5 calls:

297.0ms
phi1
201.0ms
lambda1
157.0ms
lambda2
83.0ms
phi2
79.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
9.9b3lambda1
11.8b3lambda2
6.8b3phi1
13.0b1phi2
13.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1777 to 412 computations (76.8% saved)

bsearch488.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
278.0ms
9.452911611736827e-34
1.5855612524941518e-32
207.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.6s (2.4%)

Counts
89 → 4
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (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 (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 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (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)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2))
Calls

6 calls:

793.0ms
(-.f64 lambda1 lambda2)
236.0ms
lambda1
147.0ms
phi2
147.0ms
(-.f64 lambda1 lambda2)
142.0ms
lambda2
Results
ErrorSegmentsBranch
10.0b4lambda1
12.0b3lambda2
12.2b3phi1
15.2b3phi2
16.6b2(-.f64 lambda1 lambda2)
16.6b2(-.f64 lambda1 lambda2)
Compiler

Compiled 1760 to 414 computations (76.5% saved)

bsearch618.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
214.0ms
6.00888231176834e+107
3.499730417707548e+117
203.0ms
2.549130745843823e-14
1.9501271634803593e-11
199.0ms
-4868404498169.834
-2.6910165065220794e-30
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes754.0ms (1.1%)

Counts
82 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)) (cos.f64 lambda2))))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
Calls

6 calls:

166.0ms
phi1
133.0ms
lambda1
127.0ms
phi2
125.0ms
lambda2
85.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
11.0b3lambda1
16.6b3lambda2
12.2b3phi1
15.2b3phi2
16.6b2(-.f64 lambda1 lambda2)
16.6b2(-.f64 lambda1 lambda2)
Compiler

Compiled 1597 to 403 computations (74.8% saved)

bsearch406.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
205.0ms
4160140226.8139997
1344388397062.4832
199.0ms
-4868404498169.834
-2.6910165065220794e-30
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.2s (1.8%)

Counts
79 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (expm1.f64 (log1p.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (log.f64 (+.f64 (expm1.f64 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

199.0ms
(-.f64 lambda1 lambda2)
194.0ms
lambda1
194.0ms
phi2
192.0ms
phi1
188.0ms
lambda2
Results
ErrorSegmentsBranch
16.2b3lambda1
16.6b3lambda2
14.5b3phi1
16.3b3phi2
18.7b3(-.f64 lambda1 lambda2)
18.7b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1531 to 395 computations (74.2% saved)

bsearch486.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
194.0ms
9.452911611736827e-34
1.5855612524941518e-32
289.0ms
-1352137.2163366585
-221.532771749485
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes702.0ms (1%)

Counts
68 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) 1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (/.f64 2 (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1)) (*.f64 (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

144.0ms
(-.f64 lambda1 lambda2)
131.0ms
(-.f64 lambda1 lambda2)
106.0ms
lambda1
105.0ms
phi2
93.0ms
lambda2
Results
ErrorSegmentsBranch
16.3b3lambda1
16.6b3lambda2
14.6b3phi1
16.3b3phi2
18.7b3(-.f64 lambda1 lambda2)
18.7b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1306 to 347 computations (73.4% saved)

bsearch478.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
259.0ms
9.452911611736827e-34
1.5855612524941518e-32
219.0ms
-1352137.2163366585
-221.532771749485
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes679.0ms (1%)

Counts
56 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (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 (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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

133.0ms
lambda1
124.0ms
(-.f64 lambda1 lambda2)
122.0ms
(-.f64 lambda1 lambda2)
95.0ms
lambda2
88.0ms
phi2
Results
ErrorSegmentsBranch
16.4b3lambda1
16.8b3lambda2
14.9b3phi1
16.4b3phi2
18.7b3(-.f64 lambda1 lambda2)
18.7b3(-.f64 lambda1 lambda2)
Compiler

Compiled 999 to 277 computations (72.3% saved)

bsearch422.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
199.0ms
9.452911611736827e-34
1.5855612524941518e-32
220.0ms
-221.532771749485
-1.6156565658973166e-14
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes664.0ms (1%)

Counts
55 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (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)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

128.0ms
phi1
120.0ms
(-.f64 lambda1 lambda2)
111.0ms
(-.f64 lambda1 lambda2)
98.0ms
lambda1
95.0ms
lambda2
Results
ErrorSegmentsBranch
16.7b3lambda1
16.9b3lambda2
15.3b3phi1
16.4b3phi2
19.1b3(-.f64 lambda1 lambda2)
19.1b3(-.f64 lambda1 lambda2)
Compiler

Compiled 978 to 276 computations (71.8% saved)

bsearch474.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
197.0ms
9.452911611736827e-34
1.5855612524941518e-32
276.0ms
-1352137.2163366585
-221.532771749485
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes199.0ms (0.3%)

Counts
44 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 lambda1) 1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (/.f64 1 (/.f64 1 (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

76.0ms
phi2
31.0ms
lambda2
25.0ms
(-.f64 lambda1 lambda2)
24.0ms
lambda1
23.0ms
phi1
Results
ErrorSegmentsBranch
21.5b1lambda1
21.5b1lambda2
21.5b1phi1
21.5b1phi2
21.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 756 to 239 computations (68.4% saved)

regimes435.0ms (0.6%)

Counts
33 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

133.0ms
lambda2
93.0ms
phi1
85.0ms
lambda1
52.0ms
phi2
40.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
21.3b3lambda1
20.9b3lambda2
21.7b3phi1
21.2b3phi2
24.7b1(-.f64 lambda1 lambda2)
24.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 513 to 178 computations (65.3% saved)

bsearch485.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
222.0ms
3.2781418026123373e+33
1.1456987468257981e+34
263.0ms
-5.972940394618287e+27
-2.4057579787919907e+23
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes275.0ms (0.4%)

Counts
32 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
Calls

6 calls:

64.0ms
lambda2
52.0ms
lambda1
51.0ms
phi1
50.0ms
phi2
24.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
21.3b3lambda1
21.5b3lambda2
21.7b3phi1
21.2b3phi2
24.7b1(-.f64 lambda1 lambda2)
24.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 496 to 177 computations (64.3% saved)

bsearch447.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
219.0ms
0.0013637663750267505
0.215036248485044
227.0ms
-3.669094150931664e-9
-1.8663889885796692e-11
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes434.0ms (0.6%)

Counts
30 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

6 calls:

113.0ms
lambda1
83.0ms
lambda2
81.0ms
phi1
80.0ms
phi2
31.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
21.7b3lambda1
23.7b3lambda2
21.7b3phi1
21.5b3phi2
24.7b1(-.f64 lambda1 lambda2)
24.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 464 to 171 computations (63.1% saved)

bsearch587.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
248.0ms
0.0013637663750267505
0.215036248485044
338.0ms
-873.4080055536418
-3.669094150931664e-9
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes433.0ms (0.6%)

Counts
29 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 phi1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) lambda1)))))))
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(exp.f64 (log.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (sqrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 2)
(pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))) 3)
(atan2.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 1)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (sin.f64 phi2))
(pow.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 3) 1/3)
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

6 calls:

105.0ms
lambda1
87.0ms
(-.f64 lambda1 lambda2)
72.0ms
phi2
56.0ms
lambda2
51.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
25.9b4lambda1
27.8b3lambda2
21.8b3phi1
21.5b3phi2
29.2b3(-.f64 lambda1 lambda2)
29.2b3(-.f64 lambda1 lambda2)
Compiler

Compiled 448 to 168 computations (62.5% saved)

bsearch705.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
349.0ms
0.0013637663750267505
0.215036248485044
354.0ms
-5.765269933443718e-13
-2.578125660055832e-15
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes306.0ms (0.5%)

Counts
12 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))
Calls

6 calls:

100.0ms
lambda2
69.0ms
lambda1
44.0ms
(-.f64 lambda1 lambda2)
29.0ms
phi2
28.0ms
phi1
Results
ErrorSegmentsBranch
28.1b5lambda1
29.0b5lambda2
21.8b3phi1
22.3b3phi2
29.2b3(-.f64 lambda1 lambda2)
29.2b3(-.f64 lambda1 lambda2)
Compiler

Compiled 200 to 95 computations (52.5% saved)

bsearch649.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
299.0ms
63284432278.72814
1018210817314.3071
350.0ms
-1352137.2163366585
-221.532771749485
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes65.0ms (0.1%)

Counts
10 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

25.0ms
phi1
10.0ms
phi2
10.0ms
lambda2
8.0ms
(-.f64 lambda1 lambda2)
8.0ms
lambda1
Results
ErrorSegmentsBranch
31.8b1lambda1
31.8b1lambda2
30.7b3phi1
31.8b1phi2
31.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 160 to 80 computations (50% saved)

bsearch577.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
257.0ms
5.302073810009531e+30
1.9521227674447187e+35
320.0ms
-1352137.2163366585
-221.532771749485
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes46.0ms (0.1%)

Counts
9 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 phi2 lambda2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

10.0ms
phi1
8.0ms
(-.f64 lambda1 lambda2)
8.0ms
phi2
7.0ms
lambda2
7.0ms
lambda1
Results
ErrorSegmentsBranch
31.8b1lambda1
31.8b1lambda2
31.8b1phi1
31.8b1phi2
31.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 145 to 77 computations (46.9% saved)

regimes163.0ms (0.2%)

Counts
4 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

6 calls:

33.0ms
(-.f64 lambda1 lambda2)
33.0ms
(-.f64 lambda1 lambda2)
25.0ms
phi1
23.0ms
lambda1
23.0ms
phi2
Results
ErrorSegmentsBranch
34.5b3lambda1
34.3b3lambda2
37.9b3phi1
37.3b3phi2
39.7b5(-.f64 lambda1 lambda2)
39.7b5(-.f64 lambda1 lambda2)
Compiler

Compiled 77 to 49 computations (36.4% saved)

bsearch429.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
219.0ms
5.293477623871993e-76
1.1310525268168826e-73
211.0ms
-3.230952221212637e-33
-1.5932163387096402e-41
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes93.0ms (0.1%)

Counts
3 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Calls

6 calls:

23.0ms
phi1
22.0ms
phi2
17.0ms
lambda2
17.0ms
lambda1
6.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
38.3b3lambda1
37.2b3lambda2
39.9b3phi1
37.3b3phi2
42.8b1(-.f64 lambda1 lambda2)
42.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 68 to 45 computations (33.8% saved)

bsearch495.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
244.0ms
5.293477623871993e-76
1.1310525268168826e-73
250.0ms
-3.230952221212637e-33
-1.5932163387096402e-41
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes32.0ms (0%)

Accuracy

Total -3.9b remaining (-9%)

Threshold costs -3.9b (-9%)

Counts
2 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Calls

5 calls:

7.0ms
(-.f64 lambda1 lambda2)
7.0ms
lambda1
5.0ms
phi1
5.0ms
phi2
5.0ms
lambda2
Results
ErrorSegmentsBranch
43.1b1lambda1
43.1b1lambda2
43.1b1phi1
43.1b1phi2
43.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 53 to 36 computations (32.1% saved)

simplify112.0ms (0.2%)

Algorithm
egg-herbie
Rules
80×*-commutative
76×+-commutative
39×cancel-sign-sub-inv
36×distribute-lft-neg-in
35×sub-neg
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02173084
13463078
24863078
35493078
45953078
56063078
66103078
76113078
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (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))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (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))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1271229632340179/45671926166590716193865151022383844364247891968) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (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))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (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))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (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))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 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)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8078517800072891/316912650057057350374175801344) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda1 600888231176834034496408967603196881813619146598261414149046252922173517481792876593348099587484867425730560) (atan2.f64 (*.f64 (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 lambda1)))) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8724446396943433/2097152) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -5972940394618286737677352960) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 3278141802612337295268327614054400) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -69307228963411/18889465931478580854784) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(if (<=.f64 phi2 -7682578063190995/8796093022208) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -2854823395159255/4951760157141521099596496896) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 8294817107637455/131072) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi1 5302073810009530688550824050688) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(if (<=.f64 lambda2 -4722041961440187/1461501637330902918203684832716283019655932542976) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda2 8626403487799073/16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 lambda2 -4722041961440187/1461501637330902918203684832716283019655932542976) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (if (<=.f64 lambda2 8626403487799073/16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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) (expm1.f64 (log1p.f64 (*.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 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (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 (cos.f64 phi2) (sin.f64 phi1)) (fma.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 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.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) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(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 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (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))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (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 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (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))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (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 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.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 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -2976292311170907/1048576) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 8015755749885141/2417851639229258349412352) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.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 (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 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 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 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1271229632340179/45671926166590716193865151022383844364247891968) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1271229632340179/45671926166590716193865151022383844364247891968) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1271229632340179/45671926166590716193865151022383844364247891968) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log.f64 (+.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (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))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (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))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (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))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 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)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8078517800072891/316912650057057350374175801344) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda1 600888231176834034496408967603196881813619146598261414149046252922173517481792876593348099587484867425730560) (atan2.f64 (*.f64 (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 lambda1)))) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8078517800072891/316912650057057350374175801344) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda1 600888231176834034496408967603196881813619146598261414149046252922173517481792876593348099587484867425730560) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi2)))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8078517800072891/316912650057057350374175801344) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda1 600888231176834034496408967603196881813619146598261414149046252922173517481792876593348099587484867425730560) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi2)))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8724446396943433/2097152) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8724446396943433/2097152) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 lambda1 -2492623103062955/512) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda1 8724446396943433/2097152) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3897245735552085/17592186044416) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5526178319239071/5846006549323611672814739330865132078623730171904) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -5972940394618286737677352960) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 3278141802612337295268327614054400) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -5972940394618286737677352960) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 3278141802612337295268327614054400) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -69307228963411/18889465931478580854784) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(if (<=.f64 phi2 -69307228963411/18889465931478580854784) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(if (<=.f64 phi2 -69307228963411/18889465931478580854784) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 phi2 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(if (<=.f64 phi2 -7682578063190995/8796093022208) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -7682578063190995/8796093022208) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))))
(if (<=.f64 phi2 -7682578063190995/8796093022208) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 phi2 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))))
(if (<=.f64 phi2 -2854823395159255/4951760157141521099596496896) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -2854823395159255/4951760157141521099596496896) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2)) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))))
(if (<=.f64 phi2 -2854823395159255/4951760157141521099596496896) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2)) (if (<=.f64 phi2 6289262324112267/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 phi2 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 8294817107637455/131072) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 8294817107637455/131072) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi1 5302073810009530688550824050688) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 phi2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi1 -5807385123870425/4294967296) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2)) (if (<=.f64 phi1 5302073810009530688550824050688) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) phi1))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(if (<=.f64 lambda2 -4722041961440187/1461501637330902918203684832716283019655932542976) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda2 8626403487799073/16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 lambda2 -4722041961440187/1461501637330902918203684832716283019655932542976) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (sin.f64 phi2)) (if (<=.f64 lambda2 8626403487799073/16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (sin.f64 phi2))))
(if (<=.f64 lambda2 -4722041961440187/1461501637330902918203684832716283019655932542976) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (if (<=.f64 lambda2 8626403487799073/16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Compiler

Compiled 2031 to 918 computations (54.8% saved)

soundness0.0ms (0%)

end439.0ms (0.7%)

Compiler

Compiled 1903 to 269 computations (85.9% saved)

Profiling

Loading profile data...