Details

Time bar (total: 1.4min)

analyze1.3s (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)

sample12.0s (13.9%)

Results
9.1s5504×body1024valid
1.5s1303×body512valid
694.0ms1265×body256valid
691.0ms184×body2048valid

preprocess228.0ms (0.3%)

Algorithm
egg-herbie
Rules
1113×fma-def_binary64
848×fma-neg_binary64
366×cancel-sign-sub-inv_binary64
284×unsub-neg_binary64
282×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071273
1163273
2376273
3798273
41265273
51969273
62871273
73825273
84656273
95142273
105264273
115269273
125269273
135871273
145991273
155991273
165991273
044
Stop Event
saturated
saturated
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)) (-.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)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.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 (cos.f64 phi2) (neg.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (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 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(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 (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 (sin.f64 lambda1) (*.f64 (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 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (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 (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 (*.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 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 lambda1))))
(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))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (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 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (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 (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 (sin.f64 phi1) (*.f64 (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))) (fma.f64 (cos.f64 (-.f64 lambda1 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 lambda2))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (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))))))
Compiler

Compiled 32 to 21 computations (34.4% saved)

simplify41.0ms (0%)

Algorithm
egg-herbie
Rules
543×fma-def_binary64
194×fma-neg_binary64
85×cancel-sign-sub-inv_binary64
59×distribute-rgt-neg-in_binary64
48×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01839
13239
26739
313239
420839
532139
650039
766439
890539
9136739
10152839
11155439
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 (*.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
16.5b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
16.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 (-.f64 lambda1 lambda2))))))
16.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 (-.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
5.8b
(cos.f64 (-.f64 lambda1 lambda2))
6.0b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 96 to 17 computations (82.3% saved)

series25.0ms (0%)

Counts
4 → 116
Calls

33 calls:

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

rewrite97.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
763×prod-diff_binary64
688×log-prod_binary64
363×fma-def_binary64
261×expm1-udef_binary64
261×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01239
126339
2365839
Stop Event
node limit
Counts
4 → 162
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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
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)) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (*.f64 (neg.f64 lambda2) 1))) (*.f64 (cos.f64 lambda1) (sin.f64 (*.f64 (neg.f64 lambda2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda2) lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 lambda2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda2) (sin.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 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (cos.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))) (*.f64 (cos.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (sin.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 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 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 (+.f64 lambda1 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)) 3) 1/3)))) (#(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 (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 1 (expm1.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 expm1.f64 (log1p.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 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 fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) 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 fma.f64 1 (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 fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.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 fma.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sqrt.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 fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 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 fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (sin.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (cos.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))) (*.f64 (sin.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (sin.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(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 (*.f64 (neg.f64 lambda2) 1))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 (neg.f64 lambda2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 lambda2) 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 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.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 (*.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)))) (cos.f64 (+.f64 lambda1 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 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(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 (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 1 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.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 fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 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 fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.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 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 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(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 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 (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 pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(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 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 1 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))) (#(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 log1p.f64 (expm1.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 fma.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 fma.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 0 (*.f64 (cos.f64 (-.f64 lambda1 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 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(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 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.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 fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))

simplify131.0ms (0.2%)

Algorithm
egg-herbie
Rules
519×distribute-lft-out_binary64
518×*-commutative_binary64
512×fma-neg_binary64
375×distribute-rgt-neg-out_binary64
343×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01892277
15812183
218461956
336071840
Stop Event
node limit
Counts
278 → 261
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))
(*.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 (-.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 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
(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 (cos.f64 lambda2) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (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 (cos.f64 lambda2) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (sin.f64 lambda2)))
(+.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2))) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) lambda1)) (-.f64 (*.f64 lambda1 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) (sin.f64 lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.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 (*.f64 -1/2 lambda2) lambda2) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.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 (*.f64 (+.f64 (*.f64 (*.f64 -1/2 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 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.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 (+.f64 (cos.f64 lambda2) (*.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 lambda1 (*.f64 (cos.f64 lambda2) -1/2)))))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))))
(+.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 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (cos.f64 lambda2)))
(+.f64 (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2)))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(+.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.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) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(+.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 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.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 (*.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 1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(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 lambda1 lambda2)) (+.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)) (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 1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.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 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))) (*.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 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (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/2 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 phi1))) (*.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 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.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))))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))) (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 (*.f64 lambda1 lambda1) (sin.f64 phi1))) (*.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 lambda1 (*.f64 (cos.f64 lambda2) -1/2))))) (*.f64 (sin.f64 phi1) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.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 (*.f64 -1/2 lambda2) lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))
(+.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 (*.f64 -1/2 lambda2) lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.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))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (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 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.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 lambda2 lambda1)) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (*.f64 (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 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 1/24 (*.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)))))))
(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 lambda2 lambda1)) (sin.f64 phi1) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (*.f64 (pow.f64 phi2 4) 1/24)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4)))))
(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 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.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 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (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 (pow.f64 phi1 3) (cos.f64 phi2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/120))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.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 (pow.f64 phi1 3) (cos.f64 phi2))) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 5) (cos.f64 phi2)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/120)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.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)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.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)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) lambda1))))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.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 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (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 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)) (cos.f64 phi2))) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))))))
(fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 phi2) (fma.f64 1/6 (*.f64 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.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 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.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 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.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 lambda2 lambda2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2)))))
(fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 (*.f64 lambda2 (cos.f64 phi2)))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))))))
(+.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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))) (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (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 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 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 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))

localize71.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 94 to 17 computations (81.9% saved)

series17.0ms (0%)

Counts
2 → 84
Calls

21 calls:

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

rewrite101.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
771×log-prod_binary64
499×fma-def_binary64
289×expm1-udef_binary64
289×log1p-udef_binary64
281×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify161.0ms (0.2%)

Algorithm
egg-herbie
Rules
659×distribute-lft-out_binary64
574×neg-mul-1_binary64
477×*-commutative_binary64
455×fma-neg_binary64
312×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01571837
14661781
214721619
330511535
477651535
Stop Event
node limit
Counts
129 → 105
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)))
(*.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 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))))
(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 (*.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 phi2) (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (pow.f64 phi1 5) 1/120))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (+.f64 phi1 (*.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 phi2) (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 -1/5040 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 7) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (pow.f64 phi1 5) 1/120)))))
(+.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.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 (-.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 (-.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 (-.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 (-.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 (-.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 (-.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 (-.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 (-.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 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))))))
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.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 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (*.f64 1/24 (*.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)))))))
(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 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (cos.f64 (-.f64 lambda1 lambda2)))) (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 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4)))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.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 (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))) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (neg.f64 (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 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (-.f64 (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 lambda1 (neg.f64 (sin.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 (neg.f64 (sin.f64 lambda2)) (*.f64 (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 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (fma.f64 1/6 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))))))
(+.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 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (*.f64 -1/6 (sin.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 (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 (-.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 (-.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 (-.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 (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 (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 (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 (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 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (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 -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 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (sin.f64 phi1) (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 (pow.f64 lambda2 3) (*.f64 (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 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (sin.f64 phi1) (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 (-.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 (-.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 (-.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 (-.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 (+.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 (+.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 (+.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 (+.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 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(+.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 lambda1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (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 lambda1 (cos.f64 lambda2)) (*.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 lambda1 (cos.f64 lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1)) -1/2)))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2)) (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 (*.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 lambda1 (cos.f64 lambda2)) (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 lambda1 (cos.f64 lambda2)))) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1)) -1/2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2)) (sin.f64 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 (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 (*.f64 lambda2 (cos.f64 lambda1)) (cos.f64 phi2)))
(*.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 (*.f64 lambda2 (cos.f64 lambda1)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (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 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 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 (*.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/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.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/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.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)))

eval244.0ms (0.3%)

Compiler

Compiled 18340 to 3443 computations (81.2% saved)

prune196.0ms (0.2%)

Pruning

53 alts after pruning (53 fresh and 0 done)

PrunedKeptTotal
New46253515
Fresh000
Picked101
Done101
Total46453517
Error
7.5b
Counts
517 → 53
Alt Table
Click to see full alt table
StatusErrorProgram
38.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
28.7b
(atan2.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) lambda1)) (-.f64 (*.f64 lambda1 (*.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)))))
22.4b
(atan2.f64 (*.f64 (sin.f64 (-.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))))
16.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)) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3))))
36.9b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.0b
(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)))))
8.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.9b
(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)))))
16.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) 3)))
16.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) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))
24.7b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.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)))))
38.0b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
23.6b
(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))))))
30.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))))
16.3b
(atan2.f64 (*.f64 (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 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
28.5b
(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)))))
51.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
19.3b
(atan2.f64 (*.f64 (cbrt.f64 (pow.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)))))
8.0b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.7b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.9b
(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)))))
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) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
21.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 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2)))))))
16.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
28.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.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.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
16.3b
(atan2.f64 (*.f64 (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 lambda1) (cos.f64 lambda2))))))
16.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)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))
16.5b
(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)))))
8.2b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.3b
(atan2.f64 (*.f64 (sin.f64 (-.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))))
28.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
37.3b
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
23.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)))))
27.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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)))))
24.2b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) 1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.3b
(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) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
13.8b
(atan2.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.5b
(atan2.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.2b
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 (+.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)))))
16.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 3))))
35.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
33.1b
(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)))))
24.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)) (sin.f64 phi1))))
16.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
16.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 (+.f64 lambda1 lambda2))))))
17.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))
16.7b
(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)))))
8.2b
(atan2.f64 (*.f64 (+.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.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)))))
37.3b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 3872 to 2340 computations (39.6% saved)

localize44.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 132 to 23 computations (82.6% saved)

series18.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
4.0ms
lambda1
@inf
(*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2))
3.0ms
phi2
@0
(*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2))
2.0ms
phi2
@inf
(*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2))
2.0ms
lambda2
@inf
(*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2))
1.0ms
lambda1
@-inf
(*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2))

rewrite67.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
598×log-prod_binary64
369×pow-prod-down_binary64
319×pow2_binary64
306×prod-diff_binary64
225×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify75.0ms (0.1%)

Algorithm
egg-herbie
Rules
769×fma-def_binary64
700×fma-neg_binary64
491×associate-*l*_binary64
436×associate-*r*_binary64
367×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01031431
13041362
29801236
340011192
Stop Event
node limit
Counts
102 → 85
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.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 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 2))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 -1 (sin.f64 lambda2))
(+.f64 (*.f64 -1 (sin.f64 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (+.f64 (*.f64 -1 (sin.f64 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (+.f64 (*.f64 -1 (sin.f64 lambda2)) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6))) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)))))
(+.f64 (*.f64 1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 lambda1))) (+.f64 (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))))))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
Outputs
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))))
(-.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 phi2) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 lambda1 (*.f64 lambda1 1/2)) -1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (*.f64 1/2 lambda1)))) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/6 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (pow.f64 lambda1 3))))))
(-.f64 (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 lambda1 (*.f64 lambda1 1/2)) -1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2))))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.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 lambda2 (cos.f64 lambda1))))
(*.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 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.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 lambda2 (cos.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 lambda1) (neg.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 phi2)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (fma.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 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.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 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 phi2)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 2))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(fma.f64 -1/2 (*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4)) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))) (fma.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4)) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))) (fma.f64 -1/720 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 -1 (sin.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (*.f64 -1 (sin.f64 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 -1 (sin.f64 lambda2) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(-.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (+.f64 (*.f64 lambda1 (*.f64 lambda1 1/2)) -1))
(*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2))))
(+.f64 (*.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (+.f64 (*.f64 -1 (sin.f64 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))))
(fma.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (fma.f64 -1 (sin.f64 lambda2) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)))))
(fma.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (-.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (sin.f64 lambda2)))
(-.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 lambda1 (*.f64 lambda1 1/2)) (*.f64 -1/24 (pow.f64 lambda1 4)))) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (+.f64 -1 (+.f64 (*.f64 -1/24 (pow.f64 lambda1 4)) (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(+.f64 (*.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (+.f64 (*.f64 -1 (sin.f64 lambda2)) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6))) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))))
(fma.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (fma.f64 -1 (sin.f64 lambda2) (fma.f64 1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6)) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))))
(fma.f64 -1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (-.f64 (fma.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 6) 1/720))) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 1/720 (pow.f64 lambda1 6)))) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 lambda1 (*.f64 lambda1 1/2)) (*.f64 -1/24 (pow.f64 lambda1 4)))))
(*.f64 (sin.f64 lambda2) (+.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 1/2)) (*.f64 1/720 (pow.f64 lambda1 6))) (+.f64 -1 (*.f64 -1/24 (pow.f64 lambda1 4)))))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)))
(neg.f64 (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 lambda2 (neg.f64 (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda1) (neg.f64 lambda2))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))))
(fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (neg.f64 (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2)))
(*.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)))
(+.f64 (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)))))
(fma.f64 -1/120 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 5)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (neg.f64 (*.f64 lambda2 (cos.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda1) (-.f64 (fma.f64 -1/120 (pow.f64 lambda2 5) (*.f64 1/6 (pow.f64 lambda2 3))) lambda2))
(+.f64 (*.f64 1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 lambda1))) (+.f64 (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))))))
(fma.f64 1/5040 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 7)) (fma.f64 -1/120 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 5)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (neg.f64 (*.f64 lambda2 (cos.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (*.f64 (cos.f64 lambda1) (+.f64 (*.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) (neg.f64 lambda2)) (fma.f64 1/5040 (pow.f64 lambda2 7) (*.f64 -1/120 (pow.f64 lambda2 5)))))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))

localize32.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 84 to 16 computations (81% saved)

series4.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite48.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
562×pow1_binary64
513×add-log-exp_binary64
513×log1p-expm1-u_binary64
513×expm1-log1p-u_binary64
501×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11168
213768
Stop Event
node limit
Counts
1 → 12
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
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 (+.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 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3)))) (#(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 (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 (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 log1p.f64 (expm1.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))))))))

simplify124.0ms (0.1%)

Algorithm
egg-herbie
Rules
839×fma-def_binary64
576×associate-*l*_binary64
515×distribute-rgt-out_binary64
468×sqr-pow_binary64
449×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045180
1121178
2320156
3992135
43504135
55536135
66611135
76942135
87234135
97603135
Stop Event
node limit
Counts
20 → 27
Calls
Call 1
Inputs
(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 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 (*.f64 -1/2 (*.f64 phi1 phi1)) (sin.f64 phi2) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (fma.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 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (*.f64 1/24 (pow.f64 phi1 4))))
(*.f64 (sin.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (fma.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 (*.f64 -1/2 (*.f64 phi1 phi1)) (sin.f64 phi2) (sin.f64 phi2)) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (*.f64 1/24 (pow.f64 phi1 4)))))
(fma.f64 (sin.f64 phi2) (fma.f64 -1/720 (pow.f64 phi1 6) (*.f64 1/24 (pow.f64 phi1 4))) (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))))
(*.f64 (sin.f64 phi2) (+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/720 (pow.f64 phi1 6)))))
(*.f64 (sin.f64 phi2) (+.f64 1 (fma.f64 -1/720 (pow.f64 phi1 6) (*.f64 phi1 (*.f64 phi1 (fma.f64 (*.f64 phi1 phi1) 1/24 -1/2))))))
(*.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)))
(fma.f64 phi2 (cos.f64 phi1) (*.f64 (pow.f64 phi2 3) (*.f64 (cos.f64 phi1) -1/6)))
(*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3))))
(*.f64 (cos.f64 phi1) (fma.f64 -1/6 (pow.f64 phi2 3) 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)))))
(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 phi2 (cos.f64 phi1) (*.f64 (cos.f64 phi1) (*.f64 (pow.f64 phi2 5) 1/120))))
(fma.f64 phi2 (cos.f64 phi1) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (*.f64 -1/6 (pow.f64 phi2 3)))))
(*.f64 (cos.f64 phi1) (+.f64 phi2 (fma.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/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (*.f64 -1/5040 (pow.f64 phi2 7)))))
(*.f64 (cos.f64 phi1) (+.f64 (fma.f64 -1/6 (pow.f64 phi2 3) phi2) (fma.f64 1/120 (pow.f64 phi2 5) (*.f64 -1/5040 (pow.f64 phi2 7)))))

localize49.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
5.8b
(cos.f64 (-.f64 lambda1 lambda2))
8.0b
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
8.1b
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
Compiler

Compiled 145 to 26 computations (82.1% saved)

series9.0ms (0%)

Counts
2 → 60
Calls

18 calls:

TimeVariablePointExpression
1.0ms
lambda2
@0
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
1.0ms
phi2
@0
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
1.0ms
phi2
@0
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
1.0ms
lambda1
@0
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
1.0ms
lambda2
@0
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))

rewrite94.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
820×fma-def_binary64
639×log-prod_binary64
387×fma-neg_binary64
260×expm1-udef_binary64
260×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify83.0ms (0.1%)

Algorithm
egg-herbie
Rules
617×fma-def_binary64
568×fma-neg_binary64
502×neg-sub0_binary64
476×neg-mul-1_binary64
366×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0109992
1327918
2882844
33063836
47161836
Stop Event
node limit
Counts
172 → 164
Calls
Call 1
Inputs
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (-.f64 phi2 lambda2))
(+.f64 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1) (sin.f64 (-.f64 phi2 lambda2)))
(+.f64 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 (-.f64 phi2 lambda2)))) (sin.f64 (-.f64 phi2 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 (-.f64 phi2 lambda2)))) (sin.f64 (-.f64 phi2 lambda2)))))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi2 lambda1))
(+.f64 (sin.f64 (+.f64 phi2 lambda1)) (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi2 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi2 lambda1)) (pow.f64 lambda2 2))) (+.f64 (sin.f64 (+.f64 phi2 lambda1)) (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi2 lambda1))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi2 lambda1)) (pow.f64 lambda2 2))) (+.f64 (sin.f64 (+.f64 phi2 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi2 lambda1)))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi2 lambda1)))))))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (neg.f64 (+.f64 lambda2 phi2)))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) lambda1) (sin.f64 (neg.f64 (+.f64 lambda2 phi2))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 (+.f64 lambda2 phi2))) (pow.f64 lambda1 2))) (sin.f64 (neg.f64 (+.f64 lambda2 phi2)))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 (+.f64 lambda2 phi2))) (pow.f64 lambda1 2))) (sin.f64 (neg.f64 (+.f64 lambda2 phi2))))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 phi2))
(+.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 lambda1 phi2)))) (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) lambda2))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 lambda1 phi2)))) (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) lambda2)))))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
Outputs
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi2 phi2) -1/2))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2)))))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi2 phi2) -1/2))) (fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3)) (sin.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/6 (pow.f64 phi2 3)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 lambda1 (+.f64 (*.f64 -1 phi2) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 phi2 lambda2))
(+.f64 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1) (sin.f64 (-.f64 phi2 lambda2)))
(fma.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1 (sin.f64 (-.f64 phi2 lambda2)))
(fma.f64 lambda1 (cos.f64 (-.f64 phi2 lambda2)) (sin.f64 (-.f64 phi2 lambda2)))
(fma.f64 lambda1 (cos.f64 (-.f64 lambda2 phi2)) (sin.f64 (-.f64 phi2 lambda2)))
(+.f64 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 (-.f64 phi2 lambda2)))) (sin.f64 (-.f64 phi2 lambda2))))
(fma.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1 (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (*.f64 lambda1 lambda1)) (sin.f64 (-.f64 phi2 lambda2))))
(fma.f64 lambda1 (cos.f64 (-.f64 phi2 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi2 lambda2))))
(fma.f64 lambda1 (cos.f64 (-.f64 phi2 lambda2)) (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1)))
(fma.f64 lambda1 (cos.f64 (-.f64 lambda2 phi2)) (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 (-.f64 phi2 lambda2)))) (sin.f64 (-.f64 phi2 lambda2)))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (pow.f64 lambda1 3)) (fma.f64 (cos.f64 (-.f64 phi2 lambda2)) lambda1 (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (*.f64 lambda1 lambda1)) (sin.f64 (-.f64 phi2 lambda2)))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (pow.f64 lambda1 3)) (fma.f64 lambda1 (cos.f64 (-.f64 phi2 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi2 lambda2)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1) (sin.f64 (-.f64 phi2 lambda2)) (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1) (sin.f64 (-.f64 phi2 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 phi2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (+.f64 phi2 lambda1))
(sin.f64 (+.f64 lambda1 phi2))
(+.f64 (sin.f64 (+.f64 phi2 lambda1)) (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi2 lambda1)))))
(+.f64 (sin.f64 (+.f64 lambda1 phi2)) (*.f64 (neg.f64 lambda2) (cos.f64 (+.f64 lambda1 phi2))))
(-.f64 (sin.f64 (+.f64 lambda1 phi2)) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi2 lambda1)) (pow.f64 lambda2 2))) (+.f64 (sin.f64 (+.f64 phi2 lambda1)) (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi2 lambda1))))))
(fma.f64 -1/2 (*.f64 (sin.f64 (+.f64 lambda1 phi2)) (*.f64 lambda2 lambda2)) (+.f64 (sin.f64 (+.f64 lambda1 phi2)) (*.f64 (neg.f64 lambda2) (cos.f64 (+.f64 lambda1 phi2)))))
(-.f64 (fma.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda1 phi2))) (*.f64 lambda2 lambda2) (sin.f64 (+.f64 lambda1 phi2))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi2))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (+.f64 lambda1 phi2))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi2))))
(fma.f64 (cos.f64 (+.f64 lambda1 phi2)) (neg.f64 lambda2) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (+.f64 lambda1 phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi2 lambda1)) (pow.f64 lambda2 2))) (+.f64 (sin.f64 (+.f64 phi2 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi2 lambda1)))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi2 lambda1)))))))
(fma.f64 -1/2 (*.f64 (sin.f64 (+.f64 lambda1 phi2)) (*.f64 lambda2 lambda2)) (+.f64 (sin.f64 (+.f64 lambda1 phi2)) (fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi2))) (*.f64 1/6 (*.f64 (cos.f64 (+.f64 lambda1 phi2)) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (cos.f64 (+.f64 lambda1 phi2)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))) (fma.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda1 phi2))) (*.f64 lambda2 lambda2) (sin.f64 (+.f64 lambda1 phi2))))
(fma.f64 (cos.f64 (+.f64 lambda1 phi2)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (+.f64 lambda1 phi2))))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (-.f64 (+.f64 phi2 lambda1) lambda2))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi2 lambda1)))
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (+.f64 lambda1 (-.f64 phi2 lambda2)))
(sin.f64 (neg.f64 (+.f64 lambda2 phi2)))
(neg.f64 (sin.f64 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (neg.f64 lambda2) phi2))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) lambda1) (sin.f64 (neg.f64 (+.f64 lambda2 phi2))))
(fma.f64 (cos.f64 (+.f64 lambda2 phi2)) lambda1 (neg.f64 (sin.f64 (+.f64 lambda2 phi2))))
(-.f64 (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 lambda2 phi2)))
(fma.f64 lambda1 (cos.f64 (+.f64 lambda2 phi2)) (sin.f64 (-.f64 (neg.f64 lambda2) phi2)))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 (+.f64 lambda2 phi2))) (pow.f64 lambda1 2))) (sin.f64 (neg.f64 (+.f64 lambda2 phi2)))))
(fma.f64 (cos.f64 (+.f64 lambda2 phi2)) lambda1 (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (neg.f64 (sin.f64 (+.f64 lambda2 phi2)))) (neg.f64 (sin.f64 (+.f64 lambda2 phi2)))))
(-.f64 (fma.f64 lambda1 (cos.f64 (+.f64 lambda2 phi2)) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (neg.f64 (sin.f64 (+.f64 lambda2 phi2)))))) (sin.f64 (+.f64 lambda2 phi2)))
(fma.f64 lambda1 (cos.f64 (+.f64 lambda2 phi2)) (*.f64 (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1) (sin.f64 (-.f64 (neg.f64 lambda2) phi2))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 (+.f64 lambda2 phi2))) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 (+.f64 lambda2 phi2))) (pow.f64 lambda1 2))) (sin.f64 (neg.f64 (+.f64 lambda2 phi2))))))
(fma.f64 (cos.f64 (+.f64 lambda2 phi2)) lambda1 (fma.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (+.f64 lambda2 phi2))) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (neg.f64 (sin.f64 (+.f64 lambda2 phi2)))) (neg.f64 (sin.f64 (+.f64 lambda2 phi2))))))
(fma.f64 lambda1 (cos.f64 (+.f64 lambda2 phi2)) (-.f64 (fma.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (+.f64 lambda2 phi2))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (neg.f64 (sin.f64 (+.f64 lambda2 phi2)))))) (sin.f64 (+.f64 lambda2 phi2))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1) (sin.f64 (-.f64 (neg.f64 lambda2) phi2))) (*.f64 (cos.f64 (+.f64 lambda2 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi2))))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 lambda1 phi2))
(+.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) lambda2)))
(+.f64 (sin.f64 (-.f64 lambda1 phi2)) (neg.f64 (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2)))))
(-.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 lambda1 phi2)))) (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) lambda2))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (neg.f64 (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2))))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (-.f64 lambda1 phi2))) (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2))))
(-.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 lambda1 phi2)))) (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 phi2)) lambda2)))))
(fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (-.f64 lambda1 phi2))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (neg.f64 (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2)))))))
(fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (-.f64 lambda1 phi2))) (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi2)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (-.f64 lambda1 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 phi2)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2))))
(fma.f64 (sin.f64 (-.f64 lambda1 phi2)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 (-.f64 lambda1 phi2)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2))))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 lambda2) lambda1) phi2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2)))
(-.f64 (fma.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) -1/2) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2))
(-.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2))
(fma.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2) (fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2)))))
(-.f64 (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 3)) 1/6 (fma.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) -1/2) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi2))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (neg.f64 phi2) (*.f64 (pow.f64 phi2 3) 1/6))))
(fma.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (pow.f64 phi2 3) 1/6) phi2)))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))
(sin.f64 (-.f64 (+.f64 (*.f64 -1 phi2) lambda1) lambda2))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 (+.f64 lambda2 phi2))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
(sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))

localize40.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)
4.4b
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))
5.8b
(cos.f64 (-.f64 lambda1 lambda2))
6.0b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 117 to 26 computations (77.8% saved)

series10.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite64.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
514×prod-diff_binary64
507×log-prod_binary64
315×pow-prod-down_binary64
289×pow2_binary64
231×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
124125
2287525
Stop Event
node limit
Counts
2 → 69
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))
(pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(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 (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 (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 (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 (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 (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 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))) (#(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 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2)))) (#(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 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2) 1/2)))) (#(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 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 6) 1/6)))) (#(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 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2) 3/2)))) (#(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 fabs.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(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 1 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(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 expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.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 exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 4) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 3/2) (sqrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) 5) (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 4 (log.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))) 3))))))

simplify82.0ms (0.1%)

Algorithm
egg-herbie
Rules
695×unsub-neg_binary64
624×unswap-sqr_binary64
535×fma-neg_binary64
493×distribute-neg-out_binary64
485×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01431653
14421604
215711469
342871452
Stop Event
node limit
Counts
141 → 117
Calls
Call 1
Inputs
(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)))
(*.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)))
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))) (*.f64 (+.f64 (*.f64 -1/24 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 -1/360 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 6)))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))) (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))))))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
Outputs
(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 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2)))
(fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (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 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2))))
(fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.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 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2)))))
(fma.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (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 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(+.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 lambda1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (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 lambda1 (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (*.f64 lambda1 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (*.f64 1/2 (sin.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (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 (*.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 lambda1 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 -1/6 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2))) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.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 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.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 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.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 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.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 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.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 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))))
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (neg.f64 (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))
(-.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 phi2 (*.f64 phi2 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))
(*.f64 (+.f64 (*.f64 phi2 (neg.f64 phi2)) 1) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2)))))
(fma.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 phi2 4) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (neg.f64 (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))
(-.f64 (fma.f64 (pow.f64 phi2 4) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 phi2 (*.f64 phi2 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 phi2 (neg.f64 phi2)) (*.f64 (pow.f64 phi2 4) 1/3))))
(fma.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (-.f64 (*.f64 (pow.f64 phi2 4) 1/3) (*.f64 phi2 phi2)) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))) (*.f64 (+.f64 (*.f64 -1/24 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 -1/360 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 6)))))
(fma.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 phi2 4) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (fma.f64 -1 (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 (pow.f64 phi2 6) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) -2/45)))))
(+.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -2/45 (pow.f64 phi2 6))) (*.f64 phi2 (*.f64 phi2 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (fma.f64 (pow.f64 phi2 4) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (neg.f64 phi2)) 1) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 (pow.f64 phi2 6) -2/45) (*.f64 (pow.f64 phi2 4) 1/3))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))))
(fma.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2) (*.f64 (*.f64 2 (neg.f64 (sin.f64 lambda2))) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2))))
(fma.f64 2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (neg.f64 (sin.f64 lambda2)))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))
(*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 2 (*.f64 lambda1 (cos.f64 lambda2)))))
(*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (-.f64 (*.f64 2 (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))))
(fma.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2)))) (*.f64 lambda1 lambda1) (fma.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2) (*.f64 (*.f64 2 (neg.f64 (sin.f64 lambda2))) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))) (fma.f64 2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (neg.f64 (sin.f64 lambda2)))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 2 (*.f64 lambda1 (cos.f64 lambda2))))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (-.f64 (*.f64 2 (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))) (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))))))))
(fma.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2)))) (*.f64 lambda1 lambda1) (fma.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2) (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2))) (*.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (pow.f64 (cos.f64 phi2) 2))) -4/3)))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))) (fma.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (fma.f64 2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (neg.f64 (sin.f64 lambda2)))) (*.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 (neg.f64 (sin.f64 lambda2)) -4/3))))))
(+.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 2 (*.f64 lambda1 (cos.f64 lambda2))))) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 (neg.f64 (sin.f64 lambda2)) -4/3))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))))
(-.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (-.f64 (*.f64 2 (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 lambda2)))) (*.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda2))) (*.f64 (pow.f64 lambda1 3) -4/3)))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 -2 lambda2) (*.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 lambda2 -2)))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 lambda2 -2))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (*.f64 -2 lambda2) (*.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (sin.f64 lambda1)) (cos.f64 lambda1)))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 lambda2 -2))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 lambda2 -2)))) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 lambda2 -2)))) (*.f64 lambda2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))))))
(+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))))
(fma.f64 (pow.f64 lambda2 3) (*.f64 4/3 (*.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (sin.f64 lambda1)) (cos.f64 lambda1))) (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (*.f64 -2 lambda2) (*.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (sin.f64 lambda1)) (cos.f64 lambda1))))))
(fma.f64 (pow.f64 lambda2 3) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) 4/3) (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 lambda2 -2)))))
(+.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (+.f64 (*.f64 lambda2 -2) (*.f64 (pow.f64 lambda2 3) 4/3))))
(+.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 lambda2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (+.f64 (*.f64 lambda2 -2) (*.f64 (pow.f64 lambda2 3) 4/3))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))

localize46.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 133 to 23 computations (82.7% saved)

series12.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite97.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
716×log-prod_binary64
461×fma-def_binary64
372×pow2_binary64
258×pow1/3_binary64
256×expm1-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify71.0ms (0.1%)

Algorithm
egg-herbie
Rules
704×fma-def_binary64
561×associate-+l+_binary64
552×fma-neg_binary64
448×associate-+r+_binary64
405×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0901482
12751449
28711335
333641296
Stop Event
node limit
Counts
299 → 279
Calls
Call 1
Inputs
(*.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) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 6))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(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))))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 -1 (sin.f64 lambda2))
(+.f64 (*.f64 -1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 -1 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
Outputs
(*.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 (*.f64 lambda2 (cos.f64 phi2)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.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 (*.f64 lambda2 (cos.f64 phi2)) (cos.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.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 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(fma.f64 lambda2 (*.f64 (cos.f64 lambda1) (neg.f64 (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.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 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (cos.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.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 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)))))
(-.f64 (fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) 1/2)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (+.f64 -1 (*.f64 1/2 (*.f64 lambda1 lambda1)))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2))))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 -1/6 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))))
(-.f64 (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6))))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (+.f64 -1 (*.f64 1/2 (*.f64 lambda1 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (*.f64 -1/2 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))) (*.f64 phi2 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (fma.f64 1/24 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) 1/24) (pow.f64 phi2 4) (fma.f64 (*.f64 -1/2 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))) (*.f64 phi2 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))
(-.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (+.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (*.f64 1/24 (pow.f64 phi2 4))))
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 6))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 2))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (fma.f64 1/24 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (pow.f64 phi2 6)) (fma.f64 -1/2 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(-.f64 (fma.f64 1/24 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (pow.f64 phi2 6)) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (*.f64 phi2 phi2)))))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))))
(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))
(fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1))
(fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (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))))
(fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)))
(fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(-.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 (*.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)))))
(fma.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(*.f64 -1 (sin.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (*.f64 -1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 -1 (sin.f64 lambda2) (*.f64 lambda1 (cos.f64 lambda2)))
(-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))
(+.f64 (*.f64 -1 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))))
(fma.f64 -1 (sin.f64 lambda2) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 1/2 (sin.f64 lambda2)) (*.f64 lambda1 lambda1))))
(-.f64 (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) 1/2))) (sin.f64 lambda2))
(fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 1/2 (*.f64 lambda1 lambda1)))))
(fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1 (sin.f64 lambda2) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 1/2 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) 1/2))) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3)) (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 1/2 (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1))))

eval436.0ms (0.5%)

Compiler

Compiled 55361 to 9820 computations (82.3% saved)

prune529.0ms (0.6%)

Pruning

98 alts after pruning (97 fresh and 1 done)

PrunedKeptTotal
New1331761407
Fresh272148
Picked011
Done404
Total1362981460
Error
0.1b
Counts
1460 → 98
Alt Table
Click to see full alt table
StatusErrorProgram
37.5b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
42.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.3b
(atan2.f64 (*.f64 (cbrt.f64 (pow.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)))))
35.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
38.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
15.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
35.9b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 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)))))
44.3b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
28.5b
(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)))))
34.7b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (sin.f64 lambda1))) (sqrt.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.7b
(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)))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
15.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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))))
38.8b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
40.2b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
34.0b
(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)))))
22.4b
(atan2.f64 (*.f64 (sin.f64 (-.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))))
16.6b
(atan2.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2)) (cbrt.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
8.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.9b
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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)))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
39.3b
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
36.5b
(atan2.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.9b
(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)))))
16.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) 3)))
38.9b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.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) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))
24.7b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
38.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
49.9b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2))))))))
39.7b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 lambda1))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
23.6b
(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))))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))
37.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (+.f64 0 (*.f64 (cos.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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
36.8b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sqrt.f64 (sin.f64 lambda2))) (sqrt.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (log.f64 (/.f64 1 (+.f64 1 (expm1.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)))))
17.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
43.3b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.9b
(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)))))
24.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
40.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
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) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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)))))))
37.8b
(atan2.f64 (fabs.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
39.3b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.3b
(atan2.f64 (*.f64 (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 lambda1) (cos.f64 lambda2))))))
45.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
42.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2)))))))
39.1b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.5b
(atan2.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
50.7b
(atan2.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 phi2 (neg.f64 phi2)) 1) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
44.9b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.3b
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.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)))))
18.6b
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.5b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
41.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.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)))))
35.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 3))))
22.3b
(atan2.f64 (*.f64 (sin.f64 (-.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))))
28.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
38.6b
(atan2.f64 (+.f64 0 (*.f64 (sin.f64 (+.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)))))
44.6b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
19.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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))))))
13.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)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.2b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) 1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
27.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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)))))
8.0b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda1) (cbrt.f64 (pow.f64 (cos.f64 lambda2) 2))) (cbrt.f64 (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
39.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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))))))
40.9b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 phi2 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
15.7b
(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 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
40.0b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
8.0b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.5b
(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)))))
37.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
35.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.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) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
38.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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)))))
16.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 3))))
24.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)) (sin.f64 phi1))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3))))
17.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))
14.0b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
37.8b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.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 lambda1) (cos.f64 lambda2))))))
37.9b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
44.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 6363 to 4093 computations (35.7% saved)

localize49.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 167 to 24 computations (85.6% saved)

series18.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite92.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
652×fma-def_binary64
357×fma-neg_binary64
329×expm1-udef_binary64
329×log1p-udef_binary64
275×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify245.0ms (0.3%)

Algorithm
egg-herbie
Rules
648×unswap-sqr_binary64
555×*-commutative_binary64
503×+-commutative_binary64
429×distribute-rgt-in_binary64
417×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01282015
14361932
218271749
342591749
449071749
554181749
657691749
768051749
869441749
973761749
1076421749
1179671749
Stop Event
node limit
Counts
167 → 148
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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.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 -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 (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 (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/120 (pow.f64 phi1 5)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.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/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 (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 (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 (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 (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 (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 (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 (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 (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 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) -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 (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 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) -1/2))))
(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))) (*.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))))))
(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 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/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 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) -1/2)))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 phi1) 1/24)))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (sin.f64 phi1))))
(+.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 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))))))
(*.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 (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 (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 (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 (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 (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 (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 (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 (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 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) -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 -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 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2)))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 -1/6 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (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 (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 (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 (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 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.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 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.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 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.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 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.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 (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 (*.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 (*.f64 (cos.f64 phi2) 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 (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 (*.f64 (cos.f64 phi2) 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 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(+.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 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.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))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.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 (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 (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 (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 (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 (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 (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 (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 (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 lambda1 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (*.f64 (sin.f64 lambda2) -1/6)))
(*.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 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 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/5040 (pow.f64 lambda1 7)) (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.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 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 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.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/6 (pow.f64 lambda2 3)) (*.f64 -1/5040 (pow.f64 lambda2 7)))) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) lambda2)))
(*.f64 (sin.f64 lambda1) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (*.f64 -1/5040 (pow.f64 lambda2 7))) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.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))

localize28.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 71 to 14 computations (80.3% saved)

series2.0ms (0%)

Counts
1 → 16
Calls

6 calls:

TimeVariablePointExpression
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))
0.0ms
phi1
@-inf
(*.f64 (sin.f64 phi1) (cos.f64 phi2))

rewrite59.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
659×pow1_binary64
608×add-log-exp_binary64
608×log1p-expm1-u_binary64
608×expm1-log1p-u_binary64
596×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11238
215928
Stop Event
node limit
Counts
1 → 16
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 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 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) 1/3)))) (#(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 (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 cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 phi2) 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 expm1.f64 (log1p.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))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))

simplify136.0ms (0.2%)

Algorithm
egg-herbie
Rules
946×fma-def_binary64
576×associate-*l*_binary64
468×sqr-pow_binary64
438×associate-*r*_binary64
430×distribute-lft-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
048250
1128238
2346216
31069202
43601199
55404199
66427199
76796199
87088199
97457199
107923199
Stop Event
node limit
Counts
32 → 31
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 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (*.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/5040 (pow.f64 phi1 7) (*.f64 1/120 (pow.f64 phi1 5))))))
(*.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))))))
(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))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(*.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 (sin.f64 phi1) (*.f64 phi2 phi2)) (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)))))
(fma.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 phi1))
(fma.f64 (sin.f64 phi1) (fma.f64 phi2 (*.f64 phi2 -1/2) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 phi1))
(+.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 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(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 -1/2 (*.f64 phi2 phi2) 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 (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))

localize40.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 104 to 19 computations (81.7% saved)

series10.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite74.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
755×log-prod_binary64
450×fma-def_binary64
390×pow2_binary64
274×pow1/3_binary64
265×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify62.0ms (0.1%)

Algorithm
egg-herbie
Rules
889×associate-+r+_binary64
741×distribute-lft-out_binary64
578×fma-def_binary64
545×associate-*l*_binary64
485×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0861195
12461191
28351081
338211010
Stop Event
node limit
Counts
127 → 110
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (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)))))
(+.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.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 (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) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.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 (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) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 -1/6 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
Outputs
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 1/120 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))
(fma.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) -1/6) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) 1/120))))
(fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(fma.f64 -1/6 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 -1/5040 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 1/120 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 -1/5040 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) 1/120)))))
(+.f64 (*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi2)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 -1/2 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)))
(fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1) (*.f64 (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 phi2 (*.f64 (*.f64 phi2 (sin.f64 phi1)) -1/2))))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(fma.f64 -1/2 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (fma.f64 1/24 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1))))
(fma.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) -1/2) (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1) (*.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))
(fma.f64 -1/2 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (fma.f64 1/24 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)))))
(fma.f64 -1/2 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1)))) (fma.f64 1/24 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1) (*.f64 -1/720 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))))))
(+.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 phi2 (*.f64 (*.f64 phi2 (sin.f64 phi1)) -1/2)))) (*.f64 (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (+.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (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 (*.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 (fma.f64 lambda2 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2)))
(*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
(*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2)))
(*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
(*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (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)))))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 lambda1 (sin.f64 phi1)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda1 (*.f64 lambda2 (sin.f64 phi1)))))
(*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 lambda1 (sin.f64 phi1))))) (*.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))))
(fma.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda1 (*.f64 lambda2 (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2))) -1/2)))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 lambda1 lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (+.f64 lambda2 (*.f64 -1/2 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))))))
(fma.f64 -1/6 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 lambda1 (sin.f64 phi1))))) (*.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1)))))
(fma.f64 -1/6 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (fma.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda1 (*.f64 lambda2 (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2))) -1/2))))
(fma.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (+.f64 (fma.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 lambda1 lambda1))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 1 (*.f64 lambda2 lambda1)) (sin.f64 phi1)) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 phi1))) (+.f64 -1/2 (*.f64 (*.f64 lambda2 -1/6) lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))

localize37.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 111 to 20 computations (82% saved)

series6.0ms (0%)

Counts
1 → 20
Calls

9 calls:

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

rewrite63.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
673×prod-diff_binary64
532×log-prod_binary64
357×pow-prod-down_binary64
285×pow2_binary64
262×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify53.0ms (0.1%)

Algorithm
egg-herbie
Rules
698×cancel-sign-sub-inv_binary64
695×fma-neg_binary64
467×associate-+l+_binary64
401×unsub-neg_binary64
373×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053485
1149465
2453374
31711354
45419354
Stop Event
node limit
Counts
45 → 46
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) lambda1)
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4))))) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4)))))) (sin.f64 lambda2))
Outputs
(*.f64 (cos.f64 phi2) lambda1)
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))))
(fma.f64 (cos.f64 phi2) lambda1 (neg.f64 (*.f64 (cos.f64 phi2) lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 lambda1 (neg.f64 lambda2)))
(*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 lambda2 lambda2)) (neg.f64 (*.f64 (cos.f64 phi2) lambda2))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) lambda2))
(fma.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2) (*.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda2 lambda2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (fma.f64 (*.f64 lambda2 -1/2) lambda2 1)) lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 lambda2 lambda2)) (fma.f64 -1 (*.f64 (cos.f64 phi2) lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) lambda1)))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) lambda1) (*.f64 (cos.f64 phi2) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 lambda2 1/6) (*.f64 lambda1 -1/2)))))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)))
(*.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)))
(*.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))
(fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 phi2 phi2)) (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 lambda2))
(-.f64 (fma.f64 -1/2 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (*.f64 phi2 phi2)) (*.f64 lambda1 (cos.f64 lambda2))) (sin.f64 lambda2))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))))
(*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4))))) (sin.f64 lambda2))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 phi2 phi2)) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/24 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 4))))) (sin.f64 lambda2))
(-.f64 (fma.f64 -1/2 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (pow.f64 phi2 4)) (*.f64 lambda1 (cos.f64 lambda2)))) (sin.f64 lambda2))
(-.f64 (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))) (sin.f64 lambda2))
(*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 1/24 (pow.f64 phi2 4))))
(-.f64 (+.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4)))))) (sin.f64 lambda2))
(-.f64 (fma.f64 -1/720 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 6)) (fma.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 phi2 phi2)) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/24 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 4)))))) (sin.f64 lambda2))
(-.f64 (fma.f64 -1/720 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (pow.f64 phi2 6)) (fma.f64 -1/2 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (pow.f64 phi2 4)) (*.f64 lambda1 (cos.f64 lambda2))))) (sin.f64 lambda2))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (-.f64 (*.f64 (fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (+.f64 (*.f64 phi2 (+.f64 (*.f64 phi2 -1/2) (*.f64 1/24 (pow.f64 phi2 3)))) (*.f64 -1/720 (pow.f64 phi2 6)))) (sin.f64 lambda2)))

localize40.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 120 to 21 computations (82.5% saved)

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite56.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
846×pow1_binary64
770×add-log-exp_binary64
770×log1p-expm1-u_binary64
770×expm1-log1p-u_binary64
752×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
117416
2207516
Stop Event
node limit
Counts
2 → 28
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
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 (+.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 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3) 1/3)))) (#(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 (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 (sin.f64 lambda2)) (cos.f64 lambda1)))))) (#(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 cbrt.f64 (*.f64 (pow.f64 (cos.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 (cos.f64 lambda1) 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 log1p.f64 (expm1.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 -.f64 (+.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (sin.f64 lambda1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (cos.f64 lambda2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))

simplify134.0ms (0.2%)

Algorithm
egg-herbie
Rules
730×distribute-lft-out_binary64
628×distribute-rgt-in_binary64
466×sqr-pow_binary64
450×unswap-sqr_binary64
447×fma-def_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
077622
1217604
2624564
32213548
43203546
55213546
66041546
76826546
87472546
Stop Event
node limit
Counts
76 → 59
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))
(sin.f64 lambda1)
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1))))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) lambda1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 7))))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
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))
(fma.f64 (sin.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 lambda1)) (sin.f64 lambda2))
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1))) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1))))
(+.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)) (+.f64 1 (*.f64 1/24 (pow.f64 lambda1 4)))))
(*.f64 (sin.f64 lambda2) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1)))))
(+.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))))))
(+.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/720 (pow.f64 lambda1 6)) (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1))))))
(*.f64 (sin.f64 lambda2) (+.f64 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1)))) (*.f64 -1/720 (pow.f64 lambda1 6))))
(*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (+.f64 1 (*.f64 (pow.f64 lambda1 4) (+.f64 1/24 (*.f64 -1/720 (*.f64 lambda1 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))
(*.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 1/120 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 5)))))
(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 (*.f64 -1/6 (pow.f64 lambda2 3)) (fma.f64 1/120 (pow.f64 lambda2 5) lambda2)))
(*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) (fma.f64 -1/6 (pow.f64 lambda2 3) 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 1/120 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 5))))))
(+.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) (*.f64 -1/5040 (pow.f64 lambda2 7))) (fma.f64 1/120 (pow.f64 lambda2 5) 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))
(sin.f64 lambda1)
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1)))))
(+.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 4)))))
(+.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 1/24 (pow.f64 lambda2 4))))
(*.f64 (sin.f64 lambda1) (+.f64 1 (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1))))))
(fma.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 6)) (+.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 4))))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))) (fma.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 6)) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/720 (pow.f64 lambda2 6) 1)))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (fma.f64 -1/720 (pow.f64 lambda2 6) 1)))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/720 (pow.f64 lambda2 6) 1) (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/720 (pow.f64 lambda2 6) 1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4)))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) lambda1)
(*.f64 lambda1 (cos.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 lambda1 (cos.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))
(*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 lambda1 (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 7))))))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 -1/5040 (cos.f64 lambda2)) (pow.f64 lambda1 7)))))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 7))))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/5040 (pow.f64 lambda1 7)) (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/6 (pow.f64 lambda1 3))) (+.f64 lambda1 (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (+.f64 lambda1 (*.f64 -1/5040 (pow.f64 lambda1 7))))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))

eval420.0ms (0.5%)

Compiler

Compiled 46699 to 8244 computations (82.3% saved)

prune438.0ms (0.5%)

Pruning

126 alts after pruning (122 fresh and 4 done)

PrunedKeptTotal
New1188711259
Fresh415192
Picked011
Done235
Total12311261357
Error
0.0b
Counts
1357 → 126
Alt Table
Click to see full alt table
StatusErrorProgram
37.5b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
42.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.3b
(atan2.f64 (*.f64 (cbrt.f64 (pow.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)))))
35.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
35.9b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 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)))))
44.3b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
28.5b
(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)))))
40.2b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.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)))))
14.1b
(atan2.f64 (*.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3) (*.f64 (cos.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))))
46.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
39.9b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (neg.f64 (cos.f64 lambda1)) (sqrt.f64 (sin.f64 lambda2))) (sqrt.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
39.9b
(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 lambda2))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
15.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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))))
22.6b
(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 lambda2))))
39.5b
(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))))))
38.8b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.2b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) 1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
34.0b
(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)))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
19.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.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))))
28.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 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)))))
27.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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))))))
34.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 lambda2))))
42.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 lambda1)) (sin.f64 phi1)))))
39.4b
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 lambda2 1/6) (*.f64 lambda1 -1/2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
38.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
8.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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)))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.2b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
36.9b
(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)))))
20.8b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
37.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
35.2b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.3b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.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) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
38.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
40.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
18.9b
(atan2.f64 (*.f64 (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 1) (*.f64 (cos.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))))
39.7b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 lambda1))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
23.6b
(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))))))
37.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (+.f64 0 (*.f64 (cos.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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
22.4b
(atan2.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (-.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))))
34.7b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.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 lambda1) (cos.f64 lambda2))))))
44.4b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
17.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
38.3b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (sin.f64 lambda1))) (sqrt.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
43.3b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
25.2b
(atan2.f64 (*.f64 (cbrt.f64 (pow.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 lambda2))))
28.5b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.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 lambda1) (cos.f64 lambda2))))))
32.0b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
44.9b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
40.6b
(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 lambda2))))
34.9b
(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)))))
30.7b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.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))))
39.3b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
40.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
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) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
37.8b
(atan2.f64 (fabs.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
42.1b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (log1p.f64 (expm1.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))))
35.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
0.3b
(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)) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2))) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))
42.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2)))))))
40.3b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.5b
(atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 lambda1) (cos.f64 lambda2))))))
14.0b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
44.9b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
1.2b
(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)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (exp.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))))
36.9b
(atan2.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.0b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
50.7b
(atan2.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 phi2 (neg.f64 phi2)) 1) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.5b
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.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 (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 lambda2))))
27.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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))))
39.0b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.3b
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.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)))))
22.6b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
31.5b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
41.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.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)))))
38.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
27.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.3b
(atan2.f64 (*.f64 (sin.f64 (-.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))))
28.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
38.6b
(atan2.f64 (+.f64 0 (*.f64 (sin.f64 (+.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)))))
12.7b
(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 lambda2) (sin.f64 lambda1))))))
44.6b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))
27.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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 lambda1) (cos.f64 lambda2))))))
13.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
43.7b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.0b
(atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
45.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
40.9b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 phi2 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
15.7b
(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 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
40.0b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
26.6b
(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)) (+.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))))
36.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
16.5b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.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))))
38.5b
(atan2.f64 (+.f64 0 (*.f64 (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 lambda1) (cos.f64 lambda2))))))
37.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
45.4b
(atan2.f64 (sin.f64 lambda1) (-.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)))))
16.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 3))))
13.4b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
4.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (log.f64 (/.f64 1 (+.f64 1 (expm1.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 lambda1) (cos.f64 lambda2))))))
33.9b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.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 lambda1) (cos.f64 lambda2))))))
39.4b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.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)) (sin.f64 phi1))))
45.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
37.8b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.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 lambda1) (cos.f64 lambda2))))))
37.9b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
44.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
17.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))
Compiler

Compiled 7682 to 5000 computations (34.9% saved)

localize48.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 168 to 24 computations (85.7% saved)

localize23.0ms (0%)

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)))
5.8b
(cos.f64 (-.f64 lambda1 lambda2))
6.0b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 55 to 12 computations (78.2% saved)

series6.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
phi2
@0
(-.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
lambda2
@inf
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
lambda2
@0
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))

rewrite80.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
653×log-prod_binary64
503×fma-def_binary64
372×pow2_binary64
254×pow1/3_binary64
254×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify64.0ms (0.1%)

Algorithm
egg-herbie
Rules
686×fma-neg_binary64
667×fma-def_binary64
346×associate-*l*_binary64
307×cancel-sign-sub-inv_binary64
304×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0100975
1319958
2892918
33341885
Stop Event
node limit
Counts
146 → 132
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 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))
(+.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 lambda2 lambda1))) (sin.f64 phi1) phi2)
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) 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 lambda2 lambda1))) (sin.f64 phi1) (fma.f64 -1/6 (pow.f64 phi2 3) phi2))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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 lambda2 lambda1)) (sin.f64 phi1)))
(-.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 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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 lambda2 lambda1)) phi1))
(-.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 lambda2 lambda1)) (pow.f64 phi1 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 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 lambda2 lambda1)) (pow.f64 phi1 3)) (-.f64 (fma.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 5)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 lambda2)) (sin.f64 phi2))
(-.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)))
(+.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 1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 lambda2))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda1 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 1/2 (*.f64 lambda1 (cos.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 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))) (sin.f64 phi2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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 lambda2 (*.f64 lambda2 1/2)) -1)))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (*.f64 lambda2 1/2)) -1)))))
(-.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 lambda2 (*.f64 lambda2 1/2)) -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 (*.f64 lambda2 (*.f64 lambda2 1/2)) -1)))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (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)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))

localize41.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
5.8b
(cos.f64 (-.f64 lambda1 lambda2))
8.0b
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2)))
8.1b
(sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))
Compiler

Compiled 129 to 24 computations (81.4% saved)

series3.0ms (0%)

Counts
1 → 20
Calls

9 calls:

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

rewrite53.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
554×unpow-prod-down_binary64
516×prod-diff_binary64
440×log-prod_binary64
272×pow-prod-down_binary64
251×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify65.0ms (0.1%)

Algorithm
egg-herbie
Rules
472×distribute-rgt-neg-in_binary64
449×fma-def_binary64
404×distribute-lft-neg-in_binary64
386×neg-sub0_binary64
370×neg-mul-1_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
077468
1230445
2649385
32526351
45392351
Stop Event
node limit
Counts
45 → 51
Calls
Call 1
Inputs
(*.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 (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 (*.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))
(*.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))))
Outputs
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(*.f64 (sin.f64 phi1) (cos.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))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (sin.f64 (neg.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 phi1) lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.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 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(fma.f64 (neg.f64 (sin.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 phi1) lambda1) (fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2))))
(fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2))) (cos.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))))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))))) (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))) (+.f64 (neg.f64 lambda1) (*.f64 1/6 (pow.f64 lambda1 3)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1)) (*.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.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 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (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))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))))
(*.f64 (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 (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 phi1) (sin.f64 lambda1))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.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 (sin.f64 phi1) (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.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 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (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 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 5) 1/120))))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.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)) (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 phi1 (cos.f64 (-.f64 lambda1 lambda2))))))
(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 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi1 5) 1/120)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.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)))))

localize36.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 111 to 20 computations (82% saved)

series9.0ms (0%)

Counts
2 → 40
Calls

15 calls:

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

rewrite63.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
674×prod-diff_binary64
547×log-prod_binary64
360×pow-prod-down_binary64
288×pow2_binary64
228×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify72.0ms (0.1%)

Algorithm
egg-herbie
Rules
863×fma-neg_binary64
534×associate-+l+_binary64
527×*-commutative_binary64
393×fma-def_binary64
369×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069766
1199741
2650697
32565664
46231664
Stop Event
node limit
Counts
82 → 71
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (cos.f64 phi2) lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2)))))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.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 (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 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.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 (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 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.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 (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 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi2 6) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
lambda2
(+.f64 lambda2 (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))
(+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6))) (+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))))
Outputs
(*.f64 -1 (*.f64 (cos.f64 phi2) lambda2))
(neg.f64 (*.f64 (cos.f64 phi2) lambda2))
(*.f64 (cos.f64 phi2) (neg.f64 lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)))
(fma.f64 (cos.f64 phi2) lambda1 (neg.f64 (*.f64 (cos.f64 phi2) lambda2)))
(-.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 (cos.f64 phi2) lambda2))
(*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 (cos.f64 phi2) lambda2) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 phi2) lambda1 (-.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 lambda1)))) (*.f64 (cos.f64 phi2) lambda2)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 1/2 (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (*.f64 lambda2 lambda1)) (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 lambda1 (-.f64 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))) lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2)))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 (cos.f64 phi2) lambda2) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 lambda1)))))))
(fma.f64 (cos.f64 phi2) lambda1 (-.f64 (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 1/2 (*.f64 lambda1 lambda1))) (*.f64 -1/6 (pow.f64 lambda1 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 lambda1 -1/6) (*.f64 lambda2 1/2)))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.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 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(neg.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 lambda2 (*.f64 (cos.f64 lambda1) (neg.f64 (cos.f64 phi2))))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(neg.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 lambda2 (*.f64 (cos.f64 lambda1) (neg.f64 (cos.f64 phi2))))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (sin.f64 lambda1)) (*.f64 1/24 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 4)))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (fma.f64 (*.f64 1/24 (pow.f64 phi2 4)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 phi2 (*.f64 phi2 -1/2)))))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi2 6) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 6)) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 4)))))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6)))) (-.f64 (fma.f64 (*.f64 1/24 (pow.f64 phi2 4)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 -1/720 (pow.f64 phi2 6))) (*.f64 1/24 (pow.f64 phi2 4)))) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
lambda2
(+.f64 lambda2 (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))
(+.f64 lambda2 (*.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) -1/2))
(fma.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) -1/2 lambda2)
(fma.f64 lambda2 (*.f64 (*.f64 lambda1 lambda1) -1/2) lambda2)
(fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 -1/2)) lambda2)
(+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2)))))
(+.f64 lambda2 (fma.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)) (*.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) -1/2)))
(+.f64 lambda2 (fma.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) -1/2 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)))))
(fma.f64 lambda2 (*.f64 (*.f64 lambda1 lambda1) -1/2) (fma.f64 (pow.f64 lambda1 4) (*.f64 lambda2 1/24) lambda2))
(fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 (pow.f64 lambda1 4) (*.f64 lambda2 1/24) lambda2))
(fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda2 (*.f64 1/24 (pow.f64 lambda1 4)) lambda2))
(+.f64 (*.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6))) (+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))))
(fma.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6)) (+.f64 lambda2 (fma.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)) (*.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) -1/2))))
(+.f64 (fma.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) -1/2 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)))) (fma.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6)) lambda2))
(fma.f64 lambda2 (*.f64 -1/720 (pow.f64 lambda1 6)) (fma.f64 lambda2 (*.f64 (*.f64 lambda1 lambda1) -1/2) (fma.f64 (pow.f64 lambda1 4) (*.f64 lambda2 1/24) lambda2)))
(fma.f64 lambda2 (*.f64 -1/720 (pow.f64 lambda1 6)) (fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 (pow.f64 lambda1 4) (*.f64 lambda2 1/24) lambda2)))
(fma.f64 lambda2 (*.f64 -1/720 (pow.f64 lambda1 6)) (fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda2 (*.f64 1/24 (pow.f64 lambda1 4)) lambda2)))

localize44.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 118 to 22 computations (81.4% saved)

eval673.0ms (0.8%)

Compiler

Compiled 55113 to 9650 computations (82.5% saved)

prune710.0ms (0.8%)

Pruning

162 alts after pruning (157 fresh and 5 done)

PrunedKeptTotal
New1367761443
Fresh3681117
Picked101
Done358
Total14071621569
Error
0.0b
Counts
1569 → 162
Alt Table
Click to see full alt table
StatusErrorProgram
40.2b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.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)))))
35.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3))))
19.3b
(atan2.f64 (*.f64 (cbrt.f64 (pow.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)))))
35.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
0.2b
(atan2.f64 (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
18.2b
(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) (cos.f64 lambda1))))
44.3b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
45.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
39.4b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
45.2b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
8.5b
(atan2.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (pow.f64 (exp.f64 (sin.f64 lambda1)) (cos.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 lambda1) (cos.f64 lambda2))))))
14.1b
(atan2.f64 (*.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3) (*.f64 (cos.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))))
46.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
44.4b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
15.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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.1b
(atan2.f64 (+.f64 0 (*.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))))
32.0b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
39.9b
(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 lambda2))))
1.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (exp.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))))
28.5b
(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 lambda1))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
40.8b
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.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))))
40.0b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 lambda1))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
39.1b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
36.7b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
40.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.6b
(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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
19.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.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))))
28.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 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)))))
28.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)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
38.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
37.5b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
27.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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))))))
30.2b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) 1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
34.0b
(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)))))
45.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
37.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
22.6b
(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 lambda2))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
39.4b
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 lambda2 1/6) (*.f64 lambda1 -1/2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
38.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
8.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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.4b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cbrt.f64 (sin.f64 lambda1)) 2)) (cbrt.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
36.9b
(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)))))
40.8b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (+.f64 0 (*.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))))
37.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
52.3b
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.2b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
42.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 lambda1)) (sin.f64 phi1)))))
20.8b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
37.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
40.3b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.0b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
16.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) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))
36.9b
(atan2.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.0b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
35.2b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
38.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
18.9b
(atan2.f64 (*.f64 (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 1) (*.f64 (cos.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))))
39.7b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 lambda1))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
23.6b
(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))))))
37.3b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (+.f64 0 (*.f64 (cos.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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
22.4b
(atan2.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (-.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))))
40.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
38.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
39.0b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
38.3b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (sin.f64 lambda1))) (sqrt.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.2b
(atan2.f64 (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
43.3b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
21.6b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
32.0b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))
28.5b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
42.4b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2)))) 1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
44.4b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
44.9b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.7b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
40.6b
(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 lambda2))))
37.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
34.9b
(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)))))
30.7b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.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))))
39.3b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
40.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
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) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
37.8b
(atan2.f64 (fabs.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (log1p.f64 (expm1.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))))
37.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
44.2b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
39.5b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
27.2b
(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 (-.f64 lambda1 lambda2)) phi1)))
26.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))))
30.5b
(atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 lambda1) (cos.f64 lambda2))))))
42.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2)))))))
14.0b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
33.9b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
44.9b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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))))))
46.5b
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.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 (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 lambda2))))
39.3b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
27.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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))))
8.5b
(atan2.f64 (*.f64 (log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (exp.f64 (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
31.4b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
41.1b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 phi2 lambda2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
42.2b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
37.3b
(atan2.f64 (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.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)))))
31.5b
(atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.7b
(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 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (sin.f64 phi1))))
37.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
41.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 2)) (-.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)))))
38.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
27.6b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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)) (cos.f64 (-.f64 lambda1 lambda2)))))
39.4b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
22.3b
(atan2.f64 (*.f64 (sin.f64 (-.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))))
28.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
44.6b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3))))
46.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
42.0b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
43.7b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
27.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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 lambda1) (cos.f64 lambda2))))))
13.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
35.0b
(atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
20.3b
(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)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
40.8b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
46.7b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
45.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.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 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
39.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
33.6b
(atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
41.1b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
36.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
50.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (sin.f64 phi2))) 2))
16.5b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.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))))
38.5b
(atan2.f64 (+.f64 0 (*.f64 (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 lambda1) (cos.f64 lambda2))))))
37.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
39.8b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 phi2 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
4.4b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (log.f64 (/.f64 1 (+.f64 1 (expm1.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 lambda1) (cos.f64 lambda2))))))
45.4b
(atan2.f64 (sin.f64 lambda1) (-.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)))))
34.7b
(atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (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 lambda1) (cos.f64 lambda2))))))
16.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 3))))
13.4b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
43.1b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
24.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)) (sin.f64 phi1))))
35.3b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.2b
(atan2.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
48.7b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.4b
(atan2.f64 (*.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2) (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
35.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
38.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
45.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
44.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
17.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))
Compiler

Compiled 4840 to 3166 computations (34.6% saved)

regimes2.2s (2.5%)

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

7 calls:

408.0ms
lambda2
344.0ms
phi2
327.0ms
phi1
316.0ms
lambda1
208.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 7869 to 1229 computations (84.4% saved)

regimes1.8s (2.1%)

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

7 calls:

297.0ms
phi1
239.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)))))
234.0ms
phi2
229.0ms
lambda1
218.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 6638 to 1072 computations (83.9% saved)

regimes3.4s (3.9%)

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

7 calls:

1.2s
lambda1
872.0ms
phi2
313.0ms
(-.f64 lambda1 lambda2)
264.0ms
(-.f64 lambda1 lambda2)
209.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.0b2lambda1
8.0b1lambda2
8.0b1phi1
5.0b3phi2
8.0b1(atan2.f64 (*.f64 (sin.f64 (-.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.0b1(-.f64 lambda1 lambda2)
8.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 6417 to 1052 computations (83.6% saved)

bsearch556.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
278.0ms
1.6755003346219277e-20
1.6367707996061195e-13
274.0ms
-4655.9349601858385
-2.039296339046226
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.4s (2.8%)

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

7 calls:

643.0ms
lambda1
492.0ms
phi2
251.0ms
lambda2
242.0ms
phi1
232.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
7.0b2lambda1
8.0b1lambda2
8.0b1phi1
5.0b3phi2
8.0b1(atan2.f64 (*.f64 (sin.f64 (-.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.0b1(-.f64 lambda1 lambda2)
8.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 6141 to 1012 computations (83.5% saved)

bsearch524.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
223.0ms
1.6755003346219277e-20
1.6367707996061195e-13
295.0ms
-121721557429508.53
-123043845555.0536
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.6s (1.8%)

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

7 calls:

267.0ms
lambda1
228.0ms
lambda2
223.0ms
phi1
204.0ms
(-.f64 lambda1 lambda2)
201.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
8.0b1lambda1
8.0b1lambda2
8.0b1phi1
8.0b1phi2
8.0b1(atan2.f64 (*.f64 (sin.f64 (-.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.0b1(-.f64 lambda1 lambda2)
8.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5991 to 992 computations (83.4% saved)

regimes1.7s (2%)

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

7 calls:

259.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)))))
247.0ms
(-.f64 lambda1 lambda2)
227.0ms
lambda2
196.0ms
phi1
196.0ms
lambda1
Results
ErrorSegmentsBranch
8.0b1lambda1
8.0b1lambda2
8.0b1phi1
8.0b1phi2
8.0b1(atan2.f64 (*.f64 (sin.f64 (-.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.0b1(-.f64 lambda1 lambda2)
8.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5498 to 930 computations (83.1% saved)

regimes1.5s (1.8%)

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

7 calls:

264.0ms
(-.f64 lambda1 lambda2)
237.0ms
lambda2
224.0ms
(-.f64 lambda1 lambda2)
165.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)))))
153.0ms
lambda1
Results
ErrorSegmentsBranch
8.0b1lambda1
8.0b1lambda2
8.0b1phi1
8.0b1phi2
8.0b1(atan2.f64 (*.f64 (sin.f64 (-.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.0b1(-.f64 lambda1 lambda2)
8.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5467 to 929 computations (83% saved)

regimes3.0s (3.5%)

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

7 calls:

654.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)))))
504.0ms
phi2
378.0ms
phi1
364.0ms
(-.f64 lambda1 lambda2)
356.0ms
lambda2
Results
ErrorSegmentsBranch
7.8b3lambda1
8.0b3lambda2
8.4b3phi1
10.5b3phi2
10.3b6(atan2.f64 (*.f64 (sin.f64 (-.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)))))
12.1b2(-.f64 lambda1 lambda2)
12.1b2(-.f64 lambda1 lambda2)
Compiler

Compiled 5042 to 854 computations (83.1% saved)

bsearch463.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
227.0ms
8.191126048672413e-16
2.3016938863149282e-14
233.0ms
-15300.063565635672
-3.435338323161995e-8
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.9s (3.3%)

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

7 calls:

758.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)))))
501.0ms
phi2
365.0ms
lambda2
356.0ms
phi1
353.0ms
lambda1
Results
ErrorSegmentsBranch
10.0b3lambda1
8.0b3lambda2
8.4b3phi1
10.5b3phi2
10.0b7(atan2.f64 (*.f64 (sin.f64 (-.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)))))
12.1b2(-.f64 lambda1 lambda2)
12.1b2(-.f64 lambda1 lambda2)
Compiler

Compiled 4861 to 838 computations (82.8% saved)

bsearch608.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
375.0ms
1.9150938264278226e-16
4.8596371464226814e-14
229.0ms
-16745613362.430086
-3.9146726336978357e-16
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.0s (2.3%)

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

400.0ms
phi1
383.0ms
phi2
352.0ms
lambda1
271.0ms
lambda2
160.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
10.0b3lambda1
12.3b2lambda2
8.4b3phi1
12.0b3phi2
13.9b1(atan2.f64 (*.f64 (sin.f64 (-.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.9b1(-.f64 lambda1 lambda2)
13.9b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4832 to 837 computations (82.7% saved)

bsearch477.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
232.0ms
3.8228100395052967e-7
5164173.615512381
242.0ms
-5087270676.705086
-0.0004345054886591689
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.9s (3.3%)

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

7 calls:

559.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)))))
393.0ms
(-.f64 lambda1 lambda2)
387.0ms
phi1
380.0ms
lambda2
371.0ms
phi2
Results
ErrorSegmentsBranch
10.1b3lambda1
11.3b3lambda2
9.2b3phi1
13.8b2phi2
12.0b7(atan2.f64 (*.f64 (sin.f64 (-.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)))))
12.6b3(-.f64 lambda1 lambda2)
12.6b3(-.f64 lambda1 lambda2)
Compiler

Compiled 4689 to 823 computations (82.4% saved)

bsearch491.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
247.0ms
5164173.615512381
7628968424.2183695
241.0ms
-5087270676.705086
-0.0004345054886591689
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.9s (3.4%)

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

7 calls:

629.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)))))
443.0ms
(-.f64 lambda1 lambda2)
392.0ms
lambda1
354.0ms
lambda2
339.0ms
phi2
Results
ErrorSegmentsBranch
10.2b3lambda1
11.3b3lambda2
9.2b3phi1
13.8b2phi2
12.0b7(atan2.f64 (*.f64 (sin.f64 (-.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)))))
12.6b3(-.f64 lambda1 lambda2)
12.6b3(-.f64 lambda1 lambda2)
Compiler

Compiled 4637 to 819 computations (82.3% saved)

bsearch629.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
244.0ms
5164173.615512381
7628968424.2183695
381.0ms
-1.102644856236995e+20
-4006927960299307000.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.2s (2.5%)

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

6 calls:

440.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)))))
408.0ms
phi2
372.0ms
lambda2
370.0ms
phi1
305.0ms
lambda1
Results
ErrorSegmentsBranch
14.0b2lambda1
13.7b3lambda2
9.2b3phi1
13.2b3phi2
13.6b5(atan2.f64 (*.f64 (sin.f64 (-.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)))))
16.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4325 to 766 computations (82.3% saved)

bsearch661.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
402.0ms
5164173.615512381
7628968424.2183695
257.0ms
-0.0004345054886591689
-3.481167718890521e-13
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.2s (2.6%)

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

6 calls:

475.0ms
phi2
409.0ms
lambda2
399.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)))))
379.0ms
lambda1
331.0ms
phi1
Results
ErrorSegmentsBranch
15.0b3lambda1
13.7b3lambda2
14.6b3phi1
13.2b3phi2
13.6b5(atan2.f64 (*.f64 (sin.f64 (-.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)))))
16.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3974 to 709 computations (82.2% saved)

bsearch551.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
234.0ms
1.6367707996061195e-13
1.1469677446030622e-11
315.0ms
-4655.9349601858385
-2.039296339046226
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.3s (2.7%)

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

6 calls:

566.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)))))
456.0ms
phi2
382.0ms
phi1
324.0ms
lambda2
309.0ms
lambda1
Results
ErrorSegmentsBranch
15.0b3lambda1
13.7b3lambda2
14.6b3phi1
13.2b3phi2
13.6b5(atan2.f64 (*.f64 (sin.f64 (-.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)))))
16.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3844 to 699 computations (81.8% saved)

bsearch486.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
234.0ms
1.6367707996061195e-13
1.1469677446030622e-11
250.0ms
-4655.9349601858385
-2.039296339046226
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.4s (1.6%)

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

6 calls:

397.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)))))
335.0ms
phi2
238.0ms
lambda2
154.0ms
lambda1
97.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
16.5b1lambda1
15.1b2lambda2
16.5b1phi1
13.2b3phi2
13.6b5(atan2.f64 (*.f64 (sin.f64 (-.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)))))
16.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3347 to 627 computations (81.3% saved)

bsearch544.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
244.0ms
1.6367707996061195e-13
1.1469677446030622e-11
298.0ms
-2.039296339046226
-0.041747543620465934
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.2s (1.4%)

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

6 calls:

308.0ms
phi2
280.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)))))
182.0ms
phi1
156.0ms
lambda2
140.0ms
lambda1
Results
ErrorSegmentsBranch
16.5b1lambda1
16.5b1lambda2
16.5b1phi1
13.2b3phi2
13.6b5(atan2.f64 (*.f64 (sin.f64 (-.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)))))
16.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2998 to 597 computations (80.1% saved)

bsearch522.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
253.0ms
1.6367707996061195e-13
1.1469677446030622e-11
267.0ms
-2.039296339046226
-0.041747543620465934
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.2s (1.4%)

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

6 calls:

221.0ms
(-.f64 lambda1 lambda2)
208.0ms
(-.f64 lambda1 lambda2)
200.0ms
lambda2
175.0ms
lambda1
174.0ms
phi2
Results
ErrorSegmentsBranch
15.6b3lambda1
15.4b3lambda2
21.3b2phi1
15.7b3phi2
19.9b4(-.f64 lambda1 lambda2)
19.9b4(-.f64 lambda1 lambda2)
Compiler

Compiled 2191 to 463 computations (78.9% saved)

bsearch467.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
231.0ms
3.3611932837506875e-11
0.00010618166179623957
234.0ms
-16745613362.430086
-3.9146726336978357e-16
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.4s (1.6%)

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

6 calls:

243.0ms
phi1
228.0ms
phi2
225.0ms
lambda1
218.0ms
(-.f64 lambda1 lambda2)
217.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
15.6b3lambda1
15.4b3lambda2
21.3b2phi1
15.7b3phi2
19.9b4(-.f64 lambda1 lambda2)
19.9b4(-.f64 lambda1 lambda2)
Compiler

Compiled 2048 to 454 computations (77.8% saved)

bsearch1.1s (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
565.0ms
3.3611932837506875e-11
0.00010618166179623957
516.0ms
-16745613362.430086
-3.9146726336978357e-16
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.2s (1.4%)

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

6 calls:

314.0ms
lambda2
258.0ms
phi1
184.0ms
phi2
158.0ms
lambda1
154.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
15.6b3lambda1
18.5b3lambda2
21.4b3phi1
15.7b3phi2
21.2b2(-.f64 lambda1 lambda2)
21.2b2(-.f64 lambda1 lambda2)
Compiler

Compiled 2026 to 453 computations (77.6% saved)

bsearch693.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
262.0ms
6.2924392255502245e-6
0.1838150775696104
429.0ms
-15300.063565635672
-3.435338323161995e-8
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes941.0ms (1.1%)

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

6 calls:

167.0ms
lambda2
165.0ms
lambda1
165.0ms
phi1
161.0ms
phi2
133.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
15.6b3lambda1
18.5b3lambda2
21.4b3phi1
15.7b3phi2
21.2b2(-.f64 lambda1 lambda2)
21.2b2(-.f64 lambda1 lambda2)
Compiler

Compiled 2004 to 450 computations (77.5% saved)

bsearch463.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
228.0ms
6.2924392255502245e-6
0.1838150775696104
234.0ms
-15300.063565635672
-3.435338323161995e-8
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.3s (1.5%)

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

6 calls:

361.0ms
phi2
224.0ms
(-.f64 lambda1 lambda2)
201.0ms
lambda2
181.0ms
(-.f64 lambda1 lambda2)
163.0ms
phi1
Results
ErrorSegmentsBranch
20.1b3lambda1
17.7b4lambda2
23.0b3phi1
19.5b5phi2
22.3b3(-.f64 lambda1 lambda2)
22.3b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1960 to 449 computations (77.1% saved)

bsearch1.0s (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
256.0ms
3.3611932837506875e-11
0.00010618166179623957
414.0ms
-2.3741463035111784e-269
-8.600127784165884e-271
351.0ms
-1.2462998519389677e-49
-7.020676620931502e-53
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.3s (1.5%)

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

6 calls:

450.0ms
lambda1
209.0ms
(-.f64 lambda1 lambda2)
207.0ms
phi2
153.0ms
lambda2
137.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
20.2b6lambda1
19.1b3lambda2
24.1b1phi1
20.8b3phi2
22.3b3(-.f64 lambda1 lambda2)
22.3b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1938 to 448 computations (76.9% saved)

bsearch667.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
319.0ms
3.3611932837506875e-11
0.00010618166179623957
347.0ms
-1.2462998519389677e-49
-7.020676620931502e-53
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes608.0ms (0.7%)

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

6 calls:

167.0ms
(-.f64 lambda1 lambda2)
156.0ms
(-.f64 lambda1 lambda2)
73.0ms
phi1
72.0ms
phi2
48.0ms
lambda1
Results
ErrorSegmentsBranch
24.1b1lambda1
24.1b1lambda2
24.1b1phi1
24.1b1phi2
22.3b3(-.f64 lambda1 lambda2)
22.3b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1873 to 438 computations (76.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.958244770260977e-44
2.004028374544337e-34
0.0ms
-34.44680118492545
-0.13763712093015196
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes404.0ms (0.5%)

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

5 calls:

119.0ms
(-.f64 lambda1 lambda2)
84.0ms
lambda1
75.0ms
phi1
41.0ms
lambda2
41.0ms
phi2
Results
ErrorSegmentsBranch
24.1b1lambda1
24.1b1lambda2
24.1b1phi1
24.1b1phi2
22.3b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1648 to 385 computations (76.6% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.958244770260977e-44
2.004028374544337e-34
0.0ms
-0.00010618166179623957
-4.8596371464226814e-14
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes477.0ms (0.6%)

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

5 calls:

127.0ms
phi2
107.0ms
(-.f64 lambda1 lambda2)
80.0ms
lambda1
52.0ms
lambda2
33.0ms
phi1
Results
ErrorSegmentsBranch
24.1b1lambda1
24.1b1lambda2
24.1b1phi1
24.1b1phi2
24.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1192 to 295 computations (75.3% saved)

regimes1.3s (1.5%)

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

6 calls:

361.0ms
phi1
236.0ms
lambda1
208.0ms
(-.f64 lambda1 lambda2)
196.0ms
(-.f64 lambda1 lambda2)
152.0ms
phi2
Results
ErrorSegmentsBranch
26.5b3lambda1
26.5b3lambda2
28.8b6phi1
29.2b3phi2
30.7b6(-.f64 lambda1 lambda2)
30.7b6(-.f64 lambda1 lambda2)
Compiler

Compiled 1133 to 290 computations (74.4% saved)

bsearch626.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
305.0ms
1.0248267950897909e-38
2.004028374544337e-34
320.0ms
-5.2088164224223494e-20
-1.8303454736414192e-26
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes643.0ms (0.7%)

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

6 calls:

129.0ms
(-.f64 lambda1 lambda2)
113.0ms
phi1
105.0ms
(-.f64 lambda1 lambda2)
89.0ms
lambda2
87.0ms
phi2
Results
ErrorSegmentsBranch
29.2b3lambda1
29.8b3lambda2
31.2b3phi1
29.2b3phi2
32.3b4(-.f64 lambda1 lambda2)
32.3b4(-.f64 lambda1 lambda2)
Compiler

Compiled 967 to 274 computations (71.7% saved)

bsearch829.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
533.0ms
4.122095008804357e-7
500318318.2100582
296.0ms
-0.041747543620465934
-6.9405243418055135e-15
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes383.0ms (0.4%)

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

6 calls:

84.0ms
phi1
83.0ms
lambda2
54.0ms
lambda1
54.0ms
(-.f64 lambda1 lambda2)
54.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
33.7b2lambda1
33.6b2lambda2
33.6b3phi1
34.7b1phi2
33.6b2(-.f64 lambda1 lambda2)
33.6b2(-.f64 lambda1 lambda2)
Compiler

Compiled 891 to 266 computations (70.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.966047902502022e+228
9.647290358857427e+234
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes173.0ms (0.2%)

Counts
32 → 2
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 1 (*.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

54.0ms
phi1
46.0ms
lambda2
23.0ms
(-.f64 lambda1 lambda2)
19.0ms
phi2
17.0ms
lambda1
Results
ErrorSegmentsBranch
34.7b1lambda1
33.6b2lambda2
33.6b3phi1
34.7b1phi2
34.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 591 to 179 computations (69.7% saved)

bsearch232.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
232.0ms
1.1343517746467377e-73
2.2141693428257684e-65
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes129.0ms (0.1%)

Counts
25 → 2
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

37.0ms
phi1
37.0ms
lambda2
15.0ms
phi2
15.0ms
(-.f64 lambda1 lambda2)
14.0ms
lambda1
Results
ErrorSegmentsBranch
35.2b1lambda1
34.0b2lambda2
34.1b3phi1
35.2b1phi2
35.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 442 to 137 computations (69% saved)

bsearch223.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
222.0ms
1.1343517746467377e-73
2.2141693428257684e-65
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes70.0ms (0.1%)

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

5 calls:

13.0ms
(-.f64 lambda1 lambda2)
13.0ms
phi2
12.0ms
lambda2
12.0ms
phi1
12.0ms
lambda1
Results
ErrorSegmentsBranch
35.2b1lambda1
35.2b1lambda2
35.2b1phi1
35.2b1phi2
35.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 370 to 122 computations (67% saved)

regimes99.0ms (0.1%)

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

6 calls:

20.0ms
phi1
18.0ms
lambda1
18.0ms
lambda2
14.0ms
phi2
13.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
34.6b3lambda1
34.5b3lambda2
36.3b2phi1
35.6b2phi2
36.3b2(-.f64 lambda1 lambda2)
36.3b2(-.f64 lambda1 lambda2)
Compiler

Compiled 141 to 64 computations (54.6% saved)

bsearch451.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
222.0ms
1.8072777472271876e-20
1.9150938264278226e-16
229.0ms
-1.17711599973973e-70
-1.2340479311863512e-72
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes80.0ms (0.1%)

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

6 calls:

16.0ms
lambda1
13.0ms
phi2
12.0ms
(-.f64 lambda1 lambda2)
12.0ms
phi1
11.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
34.6b3lambda1
36.1b2lambda2
36.3b2phi1
35.6b2phi2
36.3b2(-.f64 lambda1 lambda2)
36.3b2(-.f64 lambda1 lambda2)
Compiler

Compiled 127 to 61 computations (52% saved)

bsearch463.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
233.0ms
6.2924392255502245e-6
0.1838150775696104
230.0ms
-15300.063565635672
-3.435338323161995e-8
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes71.0ms (0.1%)

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

6 calls:

15.0ms
(-.f64 lambda1 lambda2)
13.0ms
(-.f64 lambda1 lambda2)
11.0ms
lambda2
11.0ms
phi2
11.0ms
phi1
Results
ErrorSegmentsBranch
37.4b1lambda1
36.2b2lambda2
36.3b2phi1
35.6b2phi2
36.3b2(-.f64 lambda1 lambda2)
36.3b2(-.f64 lambda1 lambda2)
Compiler

Compiled 114 to 57 computations (50% saved)

bsearch306.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
305.0ms
2.1108427785367085e+22
4.841223201619906e+23
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes87.0ms (0.1%)

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

5 calls:

44.0ms
lambda1
16.0ms
phi1
12.0ms
phi2
6.0ms
(-.f64 lambda1 lambda2)
5.0ms
lambda2
Results
ErrorSegmentsBranch
37.4b1lambda1
37.4b1lambda2
35.5b3phi1
35.9b2phi2
37.4b1(-.f64 lambda1 lambda2)
Compiler

Compiled 94 to 48 computations (48.9% saved)

bsearch600.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
333.0ms
3.8228100395052967e-7
5164173.615512381
268.0ms
-0.0004345054886591689
-3.481167718890521e-13
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes64.0ms (0.1%)

Accuracy

Total -12.5b remaining (-34.8%)

Threshold costs -12.5b (-34.8%)

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

5 calls:

24.0ms
phi1
10.0ms
(-.f64 lambda1 lambda2)
9.0ms
lambda2
9.0ms
phi2
9.0ms
lambda1
Results
ErrorSegmentsBranch
37.4b1lambda1
37.4b1lambda2
35.9b3phi1
37.4b1phi2
37.4b1(-.f64 lambda1 lambda2)
Compiler

Compiled 51 to 34 computations (33.3% saved)

bsearch798.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
399.0ms
3.3955384443681726e-151
2.2530257153681595e-146
399.0ms
-0.0004345054886591689
-3.481167718890521e-13
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify191.0ms (0.2%)

Algorithm
egg-herbie
Rules
88×*-commutative_binary64
68×+-commutative_binary64
62×sub-neg_binary64
42×distribute-rgt-neg-in_binary64
39×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02863894
14563892
26113892
36833892
47423892
57583892
67643892
77653892
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 5701432196419739648/340282366920938463463374607431768211456) (atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 lambda1) (cos.f64 lambda2)))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -3895089837744273/32) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 5701432196419739648/340282366920938463463374607431768211456) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)))) (if (<=.f64 lambda1 8306788681715735/10141204801825835211973625643008) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 7768543483406739/40564819207303340847894502572032) (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 lambda1)))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 phi1 -666798742137089/131072) (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 7221084000374959/18889465931478580854784) (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) (cos.f64 lambda1)))) (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 -666798742137089/131072) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 22179956789491756/4294967296) (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) (cos.f64 lambda1)))) (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 -14452586659669541539282944/131072) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 22179956789491756/4294967296) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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 (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 -8015211547917797/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 22179956789491756/4294967296) (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 (-.f64 lambda1 lambda2)) phi1))) (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 phi2 -5119254626893117/1099511627776) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -1148021779078325/562949953421312) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -1148021779078325/562949953421312) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 2663011677268532736/79228162514264337593543950336) (atan2.f64 (*.f64 (sin.f64 (-.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 (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)))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 2663011677268532736/79228162514264337593543950336) (atan2.f64 (*.f64 (sin.f64 (-.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 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (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))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (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 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (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))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (atan2.f64 (*.f64 (sin.f64 (-.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 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -3360017753955230720/26959946667150639794667015087019630673637144422540572481103610249216) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 -3530395696521149/148701690847778306279806249814990056013126020165939445905577185931594065716040437354516831449615635058979872379019297305045458524554490570779083058110239462578297084044745987394268640983429773687023919578235143720606774870687788008815709894034865808301204510545414391282376534881468416) (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 lambda2 2663011677268532736/79228162514264337593543950336) (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 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))))))
(if (<=.f64 lambda2 -3360017753955230720/26959946667150639794667015087019630673637144422540572481103610249216) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 2663011677268532736/79228162514264337593543950336) (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 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -20) (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 (-.f64 lambda1 lambda2) 5021681388309345/100433627766186892221372630771322662657637687111424552206336) (atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 lambda2 1/6) (*.f64 lambda1 -1/2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.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))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -7378697629483821/73786976294838206464) (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 (-.f64 lambda1 lambda2) 5021681388309345/100433627766186892221372630771322662657637687111424552206336) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(if (<=.f64 lambda1 -17724683810785318912/340282366920938463463374607431768211456) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 lambda1 7852712468174923/766247770432944429179173513575154591809369561091801088) (atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 phi2 -770106252872760960/18446744073709551616) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi2 1946604330878195/4722366482869645213696) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 (-.f64 lambda1 lambda2) 9999999999999999918388610622944277578633427011520373324179896670642961784527024602806390495869308408470337715685294734193992593398889846197223766553446979093051960385337504355687757672562640543404353314227442034427503713670135808) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 7220985546169607/63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 7220985546169607/63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -58540713862030408/497323236409786642155382248146820840100456150797347717440463976893159497012533375533056) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 6149847495100089344/340282366920938463463374607431768211456) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 21108427785367084597248) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 7221084000374959/18889465931478580854784) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5005716601985341/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.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)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 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)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 5701432196419739648/340282366920938463463374607431768211456) (atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 lambda1) (cos.f64 lambda2)))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (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 695975609914519/41538374868278621028243970633760768) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 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 phi2 -3895089837744273/32) (atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 5701432196419739648/340282366920938463463374607431768211456) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -3895089837744273/32) (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 695975609914519/41538374868278621028243970633760768) (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 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 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)))))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (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 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.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 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (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 lambda1 -4205649449032087/274877906944) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)))) (if (<=.f64 lambda1 8306788681715735/10141204801825835211973625643008) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) 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 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (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 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda1 8306788681715735/10141204801825835211973625643008) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.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 (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 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 7768543483406739/40564819207303340847894502572032) (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 lambda1)))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (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 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 7768543483406739/40564819207303340847894502572032) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (-.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)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 phi1 -666798742137089/131072) (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 7221084000374959/18889465931478580854784) (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) (cos.f64 lambda1)))) (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 -666798742137089/131072) (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 7221084000374959/18889465931478580854784) (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 lambda1) (sin.f64 phi1)))) (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 -666798742137089/131072) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 22179956789491756/4294967296) (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) (cos.f64 lambda1)))) (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 -666798742137089/131072) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (if (<=.f64 phi1 5544989197372939/1073741824) (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 lambda1) (sin.f64 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 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -14452586659669541539282944/131072) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 22179956789491756/4294967296) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.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 (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 -110264485623699505152) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (if (<=.f64 phi1 5544989197372939/1073741824) (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 (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 22179956789491756/4294967296) (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 (-.f64 lambda1 lambda2)) phi1))) (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 -8015211547917797/18446744073709551616) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (if (<=.f64 phi1 5544989197372939/1073741824) (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 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (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 phi2 6483917145489801/39614081257132168796771975168) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1)) (-.f64 (*.f64 (cos.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (-.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -5119254626893117/1099511627776) (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 phi2 6483917145489801/39614081257132168796771975168) (atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1)) (-.f64 (*.f64 (cos.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -1148021779078325/562949953421312) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (-.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -1148021779078325/562949953421312) (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 phi2 6483917145489801/39614081257132168796771975168) (atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -1148021779078325/562949953421312) (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 phi2 12967834290979602/79228162514264337593543950336) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -1148021779078325/562949953421312) (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 phi2 6483917145489801/39614081257132168796771975168) (atan2.f64 (-.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 2663011677268532736/79228162514264337593543950336) (atan2.f64 (*.f64 (sin.f64 (-.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 (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)))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 5201194682165103/154742504910672534362390528) (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) (sin.f64 (neg.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 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 2663011677268532736/79228162514264337593543950336) (atan2.f64 (*.f64 (sin.f64 (-.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 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -8779524138561745/524288) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 5201194682165103/154742504910672534362390528) (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 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (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))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (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 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (atan2.f64 (*.f64 (sin.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 lambda1 928600127944769/147573952589676412928) (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 lambda2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.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 lambda1 -4205649449032087/274877906944) (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))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (atan2.f64 (*.f64 (sin.f64 (-.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 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (atan2.f64 (*.f64 (sin.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 lambda1 928600127944769/147573952589676412928) (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 (sin.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 lambda2 -3360017753955230720/26959946667150639794667015087019630673637144422540572481103610249216) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 -3530395696521149/148701690847778306279806249814990056013126020165939445905577185931594065716040437354516831449615635058979872379019297305045458524554490570779083058110239462578297084044745987394268640983429773687023919578235143720606774870687788008815709894034865808301204510545414391282376534881468416) (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 lambda2 2663011677268532736/79228162514264337593543950336) (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 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))))))
(if (<=.f64 lambda2 -3281267337846905/26328072917139296674479506920917608079723773850137277813577744384) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 -3530395696521149/148701690847778306279806249814990056013126020165939445905577185931594065716040437354516831449615635058979872379019297305045458524554490570779083058110239462578297084044745987394268640983429773687023919578235143720606774870687788008815709894034865808301204510545414391282376534881468416) (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 lambda2 5201194682165103/154742504910672534362390528) (atan2.f64 (*.f64 (sin.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 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))))
(if (<=.f64 lambda2 -3360017753955230720/26959946667150639794667015087019630673637144422540572481103610249216) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 2663011677268532736/79228162514264337593543950336) (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 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -3281267337846905/26328072917139296674479506920917608079723773850137277813577744384) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 5201194682165103/154742504910672534362390528) (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))))) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -20) (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 (-.f64 lambda1 lambda2) 5021681388309345/100433627766186892221372630771322662657637687111424552206336) (atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 lambda2 1/6) (*.f64 lambda1 -1/2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.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))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -20) (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 (-.f64 lambda1 lambda2) 5021681388309345/100433627766186892221372630771322662657637687111424552206336) (atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 lambda2 1/6) (*.f64 lambda1 -1/2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (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 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -7378697629483821/73786976294838206464) (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 (-.f64 lambda1 lambda2) 5021681388309345/100433627766186892221372630771322662657637687111424552206336) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -7378697629483821/73786976294838206464) (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 (-.f64 lambda1 lambda2) 5021681388309345/100433627766186892221372630771322662657637687111424552206336) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (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 (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 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(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 lambda1 -17724683810785318912/340282366920938463463374607431768211456) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 lambda1 7852712468174923/766247770432944429179173513575154591809369561091801088) (atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 lambda1 -8654630766985019/166153499473114484112975882535043072) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 7852712468174923/766247770432944429179173513575154591809369561091801088) (atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -8654630766985019/166153499473114484112975882535043072) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 7852712468174923/766247770432944429179173513575154591809369561091801088) (atan2.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -770106252872760960/18446744073709551616) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi2 1946604330878195/4722366482869645213696) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(if (<=.f64 phi2 -6016455100568445/144115188075855872) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 1946604330878195/4722366482869645213696) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 (-.f64 lambda1 lambda2) 9999999999999999918388610622944277578633427011520373324179896670642961784527024602806390495869308408470337715685294734193992593398889846197223766553446979093051960385337504355687757672562640543404353314227442034427503713670135808) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 (-.f64 lambda1 lambda2) 9999999999999999918388610622944277578633427011520373324179896670642961784527024602806390495869308408470337715685294734193992593398889846197223766553446979093051960385337504355687757672562640543404353314227442034427503713670135808) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 7220985546169607/63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 7220985546169607/63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 7220985546169607/63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 7220985546169607/63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -58540713862030408/497323236409786642155382248146820840100456150797347717440463976893159497012533375533056) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 6149847495100089344/340282366920938463463374607431768211456) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -7317589232753801/62165404551223330269422781018352605012557018849668464680057997111644937126566671941632) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 6005710444433681/332306998946228968225951765070086144) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -4205649449032087/274877906944) (atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 928600127944769/147573952589676412928) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 21108427785367084597248) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(if (<=.f64 phi2 21108427785367084597248) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(if (<=.f64 phi2 21108427785367084597248) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 phi2 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 7221084000374959/18889465931478580854784) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 7221084000374959/18889465931478580854784) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 7221084000374959/18889465931478580854784) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5005716601985341/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 5005716601985341/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -8015211547917797/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 5005716601985341/14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Compiler

Compiled 2554 to 1090 computations (57.3% saved)

soundness0.0ms (0%)

end419.0ms (0.5%)

Compiler

Compiled 2406 to 341 computations (85.8% saved)

Profiling

Loading profile data...