Details

Time bar (total: 1.2min)

analyze1.3s (1.8%)

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

Compiled 29 to 18 computations (37.9% saved)

sample11.3s (16.2%)

Results
8.8s5556×body1024valid
1.2s1338×body512valid
667.0ms1186×body256valid
632.0ms176×body2048valid
Bogosity

preprocess269.0ms (0.4%)

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)

simplify56.0ms (0.1%)

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))))))

eval2.0ms (0%)

Compiler

Compiled 52 to 21 computations (59.6% saved)

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 56 to 34 computations (39.3% saved)

localize66.0ms (0.1%)

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

Compiled 96 to 17 computations (82.3% saved)

series78.0ms (0.1%)

Counts
4 → 116
Calls

33 calls:

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

rewrite267.0ms (0.4%)

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
(cos.f64 (-.f64 lambda1 lambda2))
(sin.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 (*.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 (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 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 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 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 (exp.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))))) (#(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 (-.f64 phi1 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 (-.f64 phi1 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 (exp.f64 (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(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))))))))

simplify141.0ms (0.2%)

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

Useful iterations: 3 (0.0ms)

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

localize65.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 94 to 17 computations (81.9% saved)

series47.0ms (0.1%)

Counts
2 → 84
Calls

21 calls:

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

rewrite112.0ms (0.2%)

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))))))

simplify192.0ms (0.3%)

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)))

eval242.0ms (0.3%)

Compiler

Compiled 18340 to 3451 computations (81.2% saved)

prune250.0ms (0.4%)

Pruning

47 alts after pruning (47 fresh and 0 done)

PrunedKeptTotal
New46847515
Fresh000
Picked101
Done101
Total47047517
Error
5.4b
Counts
517 → 47
Alt Table
Click to see full alt table
StatusErrorProgram
44.2b
(atan2.f64 (*.f64 (-.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))))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.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)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
36.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
25.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.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)) (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 (*.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
11.6b
(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)))))
5.9b
(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)))))
26.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.9b
(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)))))
36.3b
(atan2.f64 (*.f64 (exp.f64 (log.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))))))
27.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
11.9b
(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)))))
21.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
35.5b
(atan2.f64 (*.f64 (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))) (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.6b
(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 lambda2 lambda1)) (sin.f64 phi1)))))
17.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)) (cos.f64 lambda2))))
17.7b
(atan2.f64 (*.f64 (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)))))))
20.2b
(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))))
10.9b
(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)))))
33.6b
(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)))))
31.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.3b
(atan2.f64 (*.f64 (+.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)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
11.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
34.2b
(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)))))
31.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.2b
(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)))))
22.8b
(atan2.f64 (+.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)))))) (-.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 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
11.9b
(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)))))
11.6b
(atan2.f64 (expm1.f64 (log1p.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)))))
33.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 (-.f64 lambda1 lambda2)))))
5.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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.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)))))
29.1b
(atan2.f64 (*.f64 (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))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
22.1b
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 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)))))
22.1b
(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)))))
14.3b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.8b
(atan2.f64 (cbrt.f64 (pow.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)))))
32.7b
(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)))))
17.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)) (cos.f64 lambda1))))
22.7b
(atan2.f64 (log.f64 (+.f64 1 (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)))))
27.0b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (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)))))
31.1b
(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)))))
Compiler

Compiled 3480 to 2072 computations (40.5% saved)

localize75.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 133 to 23 computations (82.7% saved)

series26.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite110.0ms (0.2%)

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

simplify235.0ms (0.3%)

Algorithm
egg-herbie
Rules
735×fma-def_binary64
583×associate-+l+_binary64
475×associate-*l*_binary64
450×associate-+r+_binary64
419×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01001352
12981322
29441198
337901152
Stop Event
node limit
Counts
139 → 121
Calls
Call 1
Inputs
(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))
(*.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))))
Outputs
(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 lambda2 lambda2)) (sin.f64 lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (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/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4))) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (+.f64 1 (fma.f64 -1/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.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/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (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/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4))) (fma.f64 -1/720 (pow.f64 lambda2 6) 1)))
(*.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 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6)))
(*.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 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6))))
(fma.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) lambda1)))
(*.f64 (cos.f64 lambda2) (+.f64 (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))) (*.f64 1/120 (pow.f64 lambda1 5))))
(+.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 (*.f64 1/120 (pow.f64 lambda1 5)) lambda1)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (cos.f64 lambda2) (+.f64 (+.f64 (*.f64 -1/5040 (pow.f64 lambda1 7)) (*.f64 1/120 (pow.f64 lambda1 5))) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(*.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 phi2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 phi2))
(+.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 (sin.f64 lambda1) (cos.f64 phi2)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.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 lambda2 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (cos.f64 phi2)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.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 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) 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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(*.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 (*.f64 lambda1 (cos.f64 lambda2)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (cos.f64 phi2)) (*.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 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (cos.f64 phi2))))
(-.f64 (fma.f64 (*.f64 lambda1 (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) 1/2))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(fma.f64 lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (+.f64 (*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2))) (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 (*.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 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 -1/6 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (cos.f64 phi2))))))
(-.f64 (fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (*.f64 lambda1 (sin.f64 lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 -1/6 (cos.f64 phi2)) (cos.f64 lambda2)) (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(*.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
(-.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 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 phi2 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(-.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 1/24 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 phi2 4) (fma.f64 (*.f64 -1/2 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 phi2 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))
(-.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))))) (*.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 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.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 (-.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 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (-.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/720 (pow.f64 phi2 6)) (*.f64 (*.f64 phi2 phi2) (+.f64 -1/2 (*.f64 (*.f64 phi2 phi2) 1/24))))))
(*.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))

localize53.0ms (0.1%)

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

Compiled 84 to 16 computations (81% saved)

series3.0ms (0%)

Counts
1 → 16
Calls

6 calls:

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

rewrite97.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))))))))

simplify167.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))

localize235.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.1b
(+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))
3.1b
(sin.f64 (-.f64 lambda1 lambda2))
7.7b
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))
8.1b
(sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2))
Compiler

Compiled 162 to 28 computations (82.7% saved)

series20.0ms (0%)

Counts
3 → 108
Calls

27 calls:

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

rewrite304.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
622×fma-neg_binary64
305×expm1-udef_binary64
305×log1p-udef_binary64
171×add-sqr-sqrt_binary64
169×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify137.0ms (0.2%)

Algorithm
egg-herbie
Rules
522×associate-+l+_binary64
435×fma-neg_binary64
429×associate-+r+_binary64
410×distribute-rgt-out_binary64
381×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01812092
15372036
214361922
342501902
Stop Event
node limit
Counts
223 → 199
Calls
Call 1
Inputs
(sin.f64 (-.f64 lambda2 lambda1))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda2 lambda1)))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 phi1 lambda2))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2)))))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2))))))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (-.f64 phi1 lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 lambda2))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1))))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1)))))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1))))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 phi1 3)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1)))))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (sin.f64 (-.f64 phi1 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)))))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (cos.f64 (+.f64 phi1 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)))) (pow.f64 lambda2 3)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
Outputs
(sin.f64 (-.f64 lambda2 lambda1))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda2 lambda1)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 phi1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (sin.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda2 lambda1)))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 phi1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 -1/2 (*.f64 phi1 phi1)))) (fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (sin.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (sin.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 phi1 lambda2))
(sin.f64 (+.f64 lambda2 phi1))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)))
(+.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 phi1))) lambda1) (sin.f64 (+.f64 lambda2 phi1)))
(-.f64 (sin.f64 (+.f64 lambda2 phi1)) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2)))))
(+.f64 (fma.f64 -1 (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1))))) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (-.f64 (sin.f64 (+.f64 lambda2 phi1)) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1)))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1)))))
(-.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (+.f64 lambda2 phi1))) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (+.f64 lambda2 phi1))) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2))))))
(+.f64 (fma.f64 1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (+.f64 lambda2 phi1))) (fma.f64 -1 (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1)))))) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (fma.f64 1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (+.f64 lambda2 phi1))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1)))) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (*.f64 (cos.f64 (+.f64 lambda2 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (+.f64 lambda2 phi1))) (*.f64 (cos.f64 (+.f64 lambda2 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))))
(fma.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1)) (sin.f64 (-.f64 phi1 lambda1)))
(fma.f64 lambda2 (cos.f64 (-.f64 lambda1 phi1)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2)))
(fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1)))))
(+.f64 (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (-.f64 phi1 lambda1))))
(+.f64 (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi1))) (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3)) (+.f64 (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (-.f64 phi1 lambda1)))))
(+.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (cos.f64 (-.f64 lambda1 phi1)) (-.f64 lambda2 (*.f64 1/6 (pow.f64 lambda2 3)))))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 lambda2))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2))))
(fma.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)) (sin.f64 (-.f64 phi1 lambda2)))
(fma.f64 lambda1 (cos.f64 (-.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)))))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))))
(+.f64 (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 lambda1 (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (-.f64 phi1 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2))))))
(+.f64 (fma.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (fma.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 phi1)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 phi1 lambda1))
(sin.f64 (+.f64 lambda1 phi1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (sin.f64 (+.f64 phi1 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1)))
(-.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1))))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 (+.f64 lambda1 phi1)))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(-.f64 (*.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(fma.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1)))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 lambda1 phi1))) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 (+.f64 lambda1 phi1)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/2 (*.f64 (*.f64 phi1 phi1) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/2 (*.f64 (*.f64 phi1 phi1) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1))))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 phi1 phi1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(+.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))
(+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 phi1 3)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1)))))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 (*.f64 -1/6 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 phi1 3) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 phi1 phi1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))))))))
(+.f64 (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))) (sin.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (pow.f64 phi1 3) (*.f64 -1/6 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2))))
(fma.f64 (fma.f64 -1 (cos.f64 (+.f64 lambda2 phi1)) (cos.f64 (-.f64 phi1 lambda2))) lambda1 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))
(fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (sin.f64 (-.f64 phi1 lambda2)))))
(fma.f64 (fma.f64 -1 (cos.f64 (+.f64 lambda2 phi1)) (cos.f64 (-.f64 phi1 lambda2))) lambda1 (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2)))))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2))) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))))
(fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)))))))))
(fma.f64 (fma.f64 -1 (cos.f64 (+.f64 lambda2 phi1)) (cos.f64 (-.f64 phi1 lambda2))) lambda1 (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1))))))))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (fma.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2)))) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))) (*.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1))))))
(+.f64 (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))) (*.f64 (pow.f64 lambda1 3) (fma.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)) (*.f64 -1/6 (cos.f64 (-.f64 lambda2 phi1))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (neg.f64 (cos.f64 (+.f64 lambda1 phi1)))))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (fma.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (fma.f64 lambda2 (-.f64 (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (neg.f64 (cos.f64 (+.f64 lambda1 phi1))))))))
(+.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1)))))))
(+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))))
(+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (cos.f64 (+.f64 phi1 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)))) (pow.f64 lambda2 3)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))))
(fma.f64 (fma.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)) (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)))) (pow.f64 lambda2 3) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (neg.f64 (cos.f64 (+.f64 lambda1 phi1)))))))))
(+.f64 (+.f64 (fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)))) (sin.f64 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 phi1))) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1))))))
(fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)))) (+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))))))
(fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (cos.f64 (-.f64 lambda1 phi1)) (*.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)))) (+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))

localize64.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))
0.4b
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
3.1b
(sin.f64 (-.f64 lambda1 lambda2))
3.1b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 111 to 19 computations (82.9% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda1
@0
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda2
@0
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
0.0ms
lambda1
@inf
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
0.0ms
lambda1
@-inf
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
0.0ms
lambda2
@-inf
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))

rewrite64.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
788×pow1_binary64
732×expm1-log1p-u_binary64
731×add-log-exp_binary64
731×log1p-expm1-u_binary64
716×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify72.0ms (0.1%)

Algorithm
egg-herbie
Rules
815×fma-def_binary64
727×fma-neg_binary64
564×distribute-rgt-neg-out_binary64
503×associate-*l*_binary64
499×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0110725
1340694
21087625
35665618
Stop Event
node limit
Counts
89 → 78
Calls
Call 1
Inputs
(-.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) 1)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) lambda1))) (exp.f64 (cos.f64 (neg.f64 lambda2)))) 1)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) lambda1))) (+.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (pow.f64 lambda1 2))))) 1)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) lambda1))) (+.f64 (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2)))) (*.f64 1/6 (sin.f64 (neg.f64 lambda2))))) (pow.f64 lambda1 3))) (+.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (pow.f64 lambda1 2)))))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(-.f64 (exp.f64 (cos.f64 lambda1)) 1)
(-.f64 (+.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))) 1)
(-.f64 (+.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1))))) 1)
(-.f64 (+.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3)))))) (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(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 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 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 (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 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(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))
Outputs
(-.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) 1)
(expm1.f64 (cos.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) lambda1))) (exp.f64 (cos.f64 (neg.f64 lambda2)))) 1)
(+.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 lambda2)) lambda1))) (expm1.f64 (cos.f64 lambda2)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) lambda1) (expm1.f64 (cos.f64 lambda2)))
(fma.f64 (*.f64 (exp.f64 (cos.f64 lambda2)) lambda1) (sin.f64 lambda2) (expm1.f64 (cos.f64 lambda2)))
(fma.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) 1) (exp.f64 (cos.f64 lambda2)) -1)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) lambda1))) (+.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (pow.f64 lambda1 2))))) 1)
(+.f64 (+.f64 (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 lambda2)) lambda1)) (exp.f64 (cos.f64 lambda2))) (*.f64 (fma.f64 -1/2 (cos.f64 lambda2) (*.f64 1/2 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))) -1)
(fma.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) lambda1) (+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) -1/2 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 lambda1 lambda1))) (expm1.f64 (cos.f64 lambda2))))
(+.f64 (expm1.f64 (cos.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) -1/2 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (expm1.f64 (cos.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 lambda1 (fma.f64 1/2 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) -1/2)))))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) lambda1))) (+.f64 (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2)))) (*.f64 1/6 (sin.f64 (neg.f64 lambda2))))) (pow.f64 lambda1 3))) (+.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2))) (*.f64 (exp.f64 (cos.f64 (neg.f64 lambda2))) (pow.f64 lambda1 2)))))) 1)
(+.f64 (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 lambda2)) lambda1)) (fma.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (fma.f64 -1/6 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3) (fma.f64 1/2 (*.f64 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2))) (*.f64 (neg.f64 (sin.f64 lambda2)) 1/6))) (pow.f64 lambda1 3)) (+.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (fma.f64 -1/2 (cos.f64 lambda2) (*.f64 1/2 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))))) -1)
(+.f64 -1 (-.f64 (fma.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (fma.f64 -1/6 (neg.f64 (pow.f64 (sin.f64 lambda2) 3)) (fma.f64 1/2 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda2))) (neg.f64 (*.f64 1/6 (sin.f64 lambda2))))) (pow.f64 lambda1 3)) (fma.f64 (fma.f64 (cos.f64 lambda2) -1/2 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (exp.f64 (cos.f64 lambda2)))) (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 -1 (fma.f64 (fma.f64 (fma.f64 -1/6 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) 1/2) 1/6))) (pow.f64 lambda1 3) 1) (exp.f64 (cos.f64 lambda2)) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) -1/2 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))) (*.f64 lambda1 (sin.f64 lambda2))))))
(fma.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 1/2 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) -1/2)))) (fma.f64 (-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) 1/2) 1/6)) (*.f64 -1/6 (pow.f64 (sin.f64 lambda2) 3))) (pow.f64 lambda1 3) 1)) (fma.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 lambda1 (sin.f64 lambda2)) -1))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 lambda1)) 1)
(expm1.f64 (cos.f64 lambda1))
(-.f64 (+.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))) 1)
(+.f64 (exp.f64 (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) lambda2) (sin.f64 lambda1)) 1))
(+.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) 1) (exp.f64 (cos.f64 lambda1))))
(fma.f64 (fma.f64 lambda2 (sin.f64 lambda1) 1) (exp.f64 (cos.f64 lambda1)) -1)
(fma.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 lambda2 (sin.f64 lambda1) 1) -1)
(-.f64 (+.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1))))) 1)
(+.f64 (exp.f64 (cos.f64 lambda1)) (-.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (*.f64 lambda2 lambda2) (fma.f64 1/2 (pow.f64 (sin.f64 lambda1) 2) (*.f64 -1/2 (cos.f64 lambda1)))) (*.f64 lambda2 (sin.f64 lambda1)))) 1))
(+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2))) (*.f64 lambda2 (sin.f64 lambda1)))) (expm1.f64 (cos.f64 lambda1)))
(fma.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (+.f64 (*.f64 lambda2 (fma.f64 -1/2 (cos.f64 lambda1) (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)))) (sin.f64 lambda1))) (expm1.f64 (cos.f64 lambda1)))
(fma.f64 (+.f64 (*.f64 lambda2 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 -1/2 (cos.f64 lambda1) (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)))))) 1) (exp.f64 (cos.f64 lambda1)) -1)
(-.f64 (+.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3)))))) (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))))) 1)
(+.f64 (exp.f64 (cos.f64 lambda1)) (-.f64 (fma.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 1/2 (pow.f64 (sin.f64 lambda1) 2) (*.f64 -1/2 (cos.f64 lambda1)))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1)) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (*.f64 lambda2 (sin.f64 lambda1))))) 1))
(+.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1)) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3)))) (*.f64 lambda2 (sin.f64 lambda1))))) (expm1.f64 (cos.f64 lambda1)))
(fma.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 lambda2 (*.f64 lambda2 (fma.f64 -1/2 (cos.f64 lambda1) (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 (pow.f64 lambda2 3) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (sin.f64 lambda1) (+.f64 -1/6 (*.f64 -1/2 (cos.f64 lambda1))))) (*.f64 lambda2 (sin.f64 lambda1)))) (expm1.f64 (cos.f64 lambda1)))
(fma.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (fma.f64 (pow.f64 lambda2 3) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (sin.f64 lambda1) (+.f64 -1/6 (*.f64 -1/2 (cos.f64 lambda1))))) (*.f64 lambda2 (sin.f64 lambda1))) (fma.f64 lambda2 (*.f64 lambda2 (fma.f64 -1/2 (cos.f64 lambda1) (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)))) 1)) -1)
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(-.f64 (exp.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) 1)
(expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))
(expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))
(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 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(fma.f64 (*.f64 (cos.f64 lambda2) -1/2) (*.f64 lambda1 lambda1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1) (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 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (cos.f64 lambda2)))
(fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (fma.f64 (*.f64 (cos.f64 lambda2) -1/2) (*.f64 lambda1 lambda1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(+.f64 (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1) (sin.f64 lambda2))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(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) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(fma.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))) (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))

localize46.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 140 to 23 computations (83.6% saved)

series25.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
7.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))))
3.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))))
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))))
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
phi2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))

rewrite86.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))))))

simplify248.0ms (0.4%)

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))

eval540.0ms (0.8%)

Compiler

Compiled 50510 to 9262 computations (81.7% saved)

prune533.0ms (0.8%)

Pruning

83 alts after pruning (83 fresh and 0 done)

PrunedKeptTotal
New1201691270
Fresh281442
Picked101
Done404
Total1234831317
Error
0.0b
Counts
1317 → 83
Alt Table
Click to see full alt table
StatusErrorProgram
17.9b
(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 lambda1)))))
10.6b
(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 (-.f64 lambda1 lambda2)))))
43.7b
(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)))))
25.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.5b
(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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
17.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)) (cos.f64 lambda1))))
38.7b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
25.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 (sin.f64 phi1) (cos.f64 phi2)) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
39.5b
(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)))))
36.7b
(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))))
10.3b
(atan2.f64 (*.f64 (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) 2)))
11.6b
(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)))))
33.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
20.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
31.7b
(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))))))
0.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 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
34.8b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
25.9b
(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 (-.f64 phi1 lambda1) lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 lambda2 phi1))))) (cos.f64 phi2)) 2)))
5.9b
(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)))))
34.0b
(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 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 lambda1))) (cos.f64 phi2)) 2)))
20.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 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))))))
33.6b
(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)))
41.1b
(atan2.f64 (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
13.1b
(atan2.f64 (*.f64 (-.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)))))
21.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
33.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) (cos.f64 (-.f64 lambda1 lambda2)))))
31.8b
(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 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
14.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
30.6b
(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 lambda2 lambda1)) (sin.f64 phi1)))))
11.9b
(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)))))
11.6b
(atan2.f64 (*.f64 (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 1 (cos.f64 (-.f64 lambda1 lambda2))) 1))))
42.6b
(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)))))
43.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
33.9b
(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 lambda1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
35.5b
(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)))))
12.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
20.2b
(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))))
5.7b
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.6b
(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)))))
32.6b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
39.6b
(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)))))
17.9b
(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 lambda2)))))
44.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
34.7b
(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 (-.f64 phi1 lambda1) lambda2)) (+.f64 (*.f64 lambda1 (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi1 lambda2))))) (cos.f64 phi2)) 2)))
16.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)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
34.2b
(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)))))
32.8b
(atan2.f64 (*.f64 (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))) (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.7b
(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))))
28.9b
(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 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) 2)))
33.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.6b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.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 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
13.0b
(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)))))
24.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2))) 3) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
11.6b
(atan2.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.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)) (cos.f64 lambda2))))
37.5b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
44.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
6.4b
(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 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))
11.8b
(atan2.f64 (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))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.3b
(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)))))))
31.1b
(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)))))
34.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)))))
32.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 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda2))) (cos.f64 phi2)) 2)))
44.8b
(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))))))
22.1b
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 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)))))
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)))))
32.7b
(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)))))
14.8b
(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)))))
11.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
22.1b
(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)))))
17.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 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
33.4b
(atan2.f64 (pow.f64 (cbrt.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)))))
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 lambda1)) (sin.f64 (+.f64 phi1 lambda1))) (cos.f64 phi2)) 2)))
5.9b
(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 (-.f64 lambda1 lambda2)))))
31.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
32.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 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
0.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 (*.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))))))
12.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 lambda1))))
42.5b
(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)))))
11.7b
(atan2.f64 (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))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.7b
(atan2.f64 (log.f64 (+.f64 1 (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)))))
Compiler

Compiled 5552 to 3516 computations (36.7% saved)

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.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)

localize26.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 68 to 14 computations (79.4% 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))

rewrite43.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))))))))

simplify115.0ms (0.2%)

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)))))

localize33.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(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)))))
0.1b
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
3.1b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 93 to 18 computations (80.6% saved)

series9.0ms (0%)

Counts
2 → 60
Calls

18 calls:

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

rewrite86.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
850×fma-def_binary64
450×fma-neg_binary64
391×expm1-udef_binary64
391×log1p-udef_binary64
232×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify117.0ms (0.2%)

Algorithm
egg-herbie
Rules
589×unsub-neg_binary64
532×distribute-rgt-neg-in_binary64
402×distribute-lft-neg-in_binary64
312×fma-def_binary64
302×*-commutative_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0842081
12232062
25552030
316652025
441902017
579682017
Stop Event
node limit
Counts
97 → 60
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2))))))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
Outputs
(*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (neg.f64 lambda2) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 lambda2))
(*.f64 lambda2 (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2)))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (fma.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3)) (*.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (cos.f64 phi2))))
(-.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 -1/120 (pow.f64 lambda2 5)))) (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (-.f64 (fma.f64 -1/120 (pow.f64 lambda2 5) (*.f64 1/6 (pow.f64 lambda2 3))) lambda2))
(*.f64 (cos.f64 phi2) (-.f64 (fma.f64 1/6 (pow.f64 lambda2 3) (*.f64 -1/120 (pow.f64 lambda2 5))) lambda2))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (fma.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3)) (fma.f64 1/5040 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 7)) (*.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/5040 (pow.f64 lambda2 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 1/5040 (pow.f64 lambda2 7) (*.f64 -1/120 (pow.f64 lambda2 5))) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 (*.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 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (-.f64 (fma.f64 -1/120 (pow.f64 lambda2 5) (*.f64 1/5040 (pow.f64 lambda2 7))) lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2)))
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 -1/2 (neg.f64 (sin.f64 lambda2))) (*.f64 phi2 phi2)))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (neg.f64 (sin.f64 lambda2)))) (neg.f64 (sin.f64 lambda2)))
(-.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 1/2 (sin.f64 lambda2))) (sin.f64 lambda2))
(-.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 lambda2) 1/2)) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (-.f64 -1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 1/24 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 phi2 4)) (*.f64 (*.f64 -1/2 (neg.f64 (sin.f64 lambda2))) (*.f64 phi2 phi2))))
(-.f64 (fma.f64 1/24 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (neg.f64 (sin.f64 lambda2)))))) (sin.f64 lambda2))
(-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 phi2 (*.f64 phi2 -1/2)))) (sin.f64 lambda2))
(*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (sin.f64 lambda2) (+.f64 (*.f64 phi2 (*.f64 phi2 1/2)) (+.f64 -1 (*.f64 (pow.f64 phi2 4) -1/24))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 1/24 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 phi2 6)) (*.f64 (*.f64 -1/2 (neg.f64 (sin.f64 lambda2))) (*.f64 phi2 phi2)))))
(-.f64 (fma.f64 1/24 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 phi2 6)) (*.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (neg.f64 (sin.f64 lambda2))))))) (sin.f64 lambda2))
(-.f64 (fma.f64 (*.f64 phi2 phi2) (*.f64 1/2 (sin.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))) (sin.f64 lambda2))
(-.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (+.f64 (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2))) (+.f64 (*.f64 (pow.f64 phi2 4) -1/24) (*.f64 (pow.f64 phi2 6) 1/720))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (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)) (*.f64 (cos.f64 phi2) (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 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))

localize55.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))
0.1b
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
3.1b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 139 to 44 computations (68.3% saved)

series7.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda2
@inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda1
@0
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda2
@-inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda1
@inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda1
@-inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))

rewrite70.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
568×log-prod_binary64
408×pow-prod-down_binary64
320×fma-def_binary64
290×pow2_binary64
203×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify251.0ms (0.4%)

Algorithm
egg-herbie
Rules
2481×fma-def_binary64
747×sqr-pow_binary64
554×*-commutative_binary64
530×unswap-sqr_binary64
398×cube-prod_binary64
Iterations

Useful iterations: 18 (0.0ms)

IterNodesCost
048671
1131617
2355606
31230600
42143599
53519598
63713598
73970598
84182598
94374598
104616598
114944598
125310598
135768598
146318598
156965598
167227598
177473598
187681584
Stop Event
node limit
Counts
131 → 106
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda2) lambda1)
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
lambda1
(+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (pow.f64 lambda1 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda2 lambda1))
(+.f64 (*.f64 1/2 (*.f64 lambda2 lambda1)) (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) lambda1)))
(+.f64 (*.f64 1/2 (*.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) lambda1)) (*.f64 1/240 (*.f64 (pow.f64 lambda2 5) lambda1))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 lambda2 7) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) lambda1)) (*.f64 1/240 (*.f64 (pow.f64 lambda2 5) lambda1)))))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
Outputs
(*.f64 (cos.f64 lambda2) lambda1)
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)))
(*.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2)) lambda1)
(*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)))
(*.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2)) lambda1)
(*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
lambda1
(+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1)
(fma.f64 (*.f64 lambda1 (*.f64 lambda2 1/2)) lambda1 lambda1)
(fma.f64 lambda2 (*.f64 1/2 (*.f64 lambda1 lambda1)) lambda1)
(fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)) lambda1)
(*.f64 lambda1 (fma.f64 lambda2 (*.f64 lambda1 1/2) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1))
(fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda2 lambda2)) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1))
(fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 lambda1)) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1))
(fma.f64 lambda1 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 (*.f64 lambda1 (*.f64 lambda2 1/2)) lambda1 lambda1))
(+.f64 lambda1 (*.f64 lambda1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) (*.f64 lambda1 1/2)))))
(+.f64 lambda1 (*.f64 lambda1 (*.f64 lambda2 (+.f64 (*.f64 lambda1 1/2) (*.f64 lambda2 -1/2)))))
(fma.f64 lambda2 (*.f64 lambda1 (fma.f64 lambda2 -1/2 (*.f64 lambda1 1/2))) lambda1)
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (pow.f64 lambda1 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)))
(fma.f64 -1/12 (*.f64 (*.f64 lambda1 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda2 lambda2)) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1)))
(fma.f64 -1/12 (*.f64 lambda1 (*.f64 lambda1 (pow.f64 lambda2 3))) (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 lambda1)) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1)))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/12 (pow.f64 lambda2 3)) (fma.f64 lambda1 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 (*.f64 lambda1 (*.f64 lambda2 1/2)) lambda1 lambda1)))
(+.f64 (fma.f64 lambda1 (*.f64 lambda2 (*.f64 lambda2 -1/2)) lambda1) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 lambda2 1/2 (*.f64 -1/12 (pow.f64 lambda2 3)))))
(+.f64 lambda1 (*.f64 lambda1 (+.f64 (*.f64 lambda1 (fma.f64 lambda2 1/2 (*.f64 -1/12 (pow.f64 lambda2 3)))) (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(+.f64 lambda1 (*.f64 lambda1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) (*.f64 lambda1 (+.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 -1/12))))))))
(*.f64 lambda1 (fma.f64 lambda2 (fma.f64 lambda2 -1/2 (*.f64 lambda1 (fma.f64 lambda2 (*.f64 lambda2 -1/12) 1/2))) 1))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 lambda2 lambda1))
(*.f64 lambda2 (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 lambda2 1/2))
(+.f64 (*.f64 1/2 (*.f64 lambda2 lambda1)) (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) lambda1)))
(fma.f64 1/2 (*.f64 lambda2 lambda1) (*.f64 -1/12 (*.f64 lambda1 (pow.f64 lambda2 3))))
(*.f64 lambda1 (+.f64 (*.f64 lambda2 1/2) (*.f64 -1/12 (pow.f64 lambda2 3))))
(*.f64 lambda1 (fma.f64 -1/12 (pow.f64 lambda2 3) (*.f64 lambda2 1/2)))
(*.f64 lambda1 (fma.f64 lambda2 1/2 (*.f64 -1/12 (pow.f64 lambda2 3))))
(*.f64 lambda2 (*.f64 lambda1 (fma.f64 lambda2 (*.f64 lambda2 -1/12) 1/2)))
(+.f64 (*.f64 1/2 (*.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) lambda1)) (*.f64 1/240 (*.f64 (pow.f64 lambda2 5) lambda1))))
(fma.f64 1/2 (*.f64 lambda2 lambda1) (fma.f64 -1/12 (*.f64 lambda1 (pow.f64 lambda2 3)) (*.f64 1/240 (*.f64 lambda1 (pow.f64 lambda2 5)))))
(fma.f64 1/2 (*.f64 lambda2 lambda1) (*.f64 lambda1 (+.f64 (*.f64 -1/12 (pow.f64 lambda2 3)) (*.f64 1/240 (pow.f64 lambda2 5)))))
(*.f64 lambda1 (+.f64 (*.f64 lambda2 1/2) (fma.f64 -1/12 (pow.f64 lambda2 3) (*.f64 1/240 (pow.f64 lambda2 5)))))
(*.f64 lambda1 (fma.f64 lambda2 (fma.f64 lambda2 (*.f64 lambda2 -1/12) 1/2) (*.f64 1/240 (pow.f64 lambda2 5))))
(+.f64 (*.f64 -1/10080 (*.f64 (pow.f64 lambda2 7) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) lambda1)) (*.f64 1/240 (*.f64 (pow.f64 lambda2 5) lambda1)))))
(fma.f64 -1/10080 (*.f64 lambda1 (pow.f64 lambda2 7)) (fma.f64 1/2 (*.f64 lambda2 lambda1) (fma.f64 -1/12 (*.f64 lambda1 (pow.f64 lambda2 3)) (*.f64 1/240 (*.f64 lambda1 (pow.f64 lambda2 5))))))
(fma.f64 -1/10080 (*.f64 lambda1 (pow.f64 lambda2 7)) (fma.f64 1/2 (*.f64 lambda2 lambda1) (*.f64 lambda1 (+.f64 (*.f64 -1/12 (pow.f64 lambda2 3)) (*.f64 1/240 (pow.f64 lambda2 5))))))
(*.f64 lambda1 (+.f64 (fma.f64 -1/12 (pow.f64 lambda2 3) (*.f64 1/240 (pow.f64 lambda2 5))) (fma.f64 -1/10080 (pow.f64 lambda2 7) (*.f64 lambda2 1/2))))
(*.f64 lambda1 (+.f64 (fma.f64 -1/10080 (pow.f64 lambda2 7) (*.f64 lambda2 1/2)) (fma.f64 -1/12 (pow.f64 lambda2 3) (*.f64 1/240 (pow.f64 lambda2 5)))))
(*.f64 lambda1 (fma.f64 lambda2 1/2 (fma.f64 -1/10080 (pow.f64 lambda2 7) (fma.f64 -1/12 (pow.f64 lambda2 3) (*.f64 1/240 (pow.f64 lambda2 5))))))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 lambda1 1/2))
(*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))

localize42.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.9b
(sin.f64 (+.f64 lambda2 lambda1))
3.1b
(sin.f64 (-.f64 lambda1 lambda2))
3.1b
(cos.f64 (-.f64 lambda1 lambda2))
3.6b
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
Compiler

Compiled 142 to 21 computations (85.2% saved)

series5.0ms (0%)

Counts
2 → 52
Calls

15 calls:

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

rewrite89.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
791×log-prod_binary64
535×fma-def_binary64
277×fma-neg_binary64
275×expm1-udef_binary64
275×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify80.0ms (0.1%)

Algorithm
egg-herbie
Rules
587×distribute-rgt-neg-out_binary64
587×fma-def_binary64
516×distribute-lft-neg-out_binary64
482×fma-neg_binary64
458×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
099843
1285786
2805734
33426705
Stop Event
node limit
Counts
142 → 132
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) (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)))
(*.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))))
(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)))
(sin.f64 lambda1)
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 lambda2)
(+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda2 (*.f64 -1 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 (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 (*.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 (cos.f64 phi2) (*.f64 lambda2 (cos.f64 lambda1))))
(fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) lambda2 1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) 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 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) lambda2 1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) lambda2 1)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) 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)))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.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) (fma.f64 lambda1 (cos.f64 lambda2) (sin.f64 (neg.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 (*.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)))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda1 (cos.f64 lambda2) (sin.f64 (neg.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) lambda1) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 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 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (*.f64 lambda1 lambda1)) (*.f64 -1/6 (*.f64 (*.f64 (cos.f64 phi2) (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 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))))
(+.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 (*.f64 (sin.f64 lambda2) 1/2) lambda1) lambda1) (sin.f64 (neg.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (-.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)))
(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 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 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 -1/2 (*.f64 (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 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 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1)))
(+.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 -1/2 (*.f64 (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 phi2 (*.f64 phi2 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.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) (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)))
(sin.f64 lambda1)
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1)) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1)))
(fma.f64 lambda2 (cos.f64 lambda1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)))
(fma.f64 lambda2 (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) lambda2 1)))
(fma.f64 (fma.f64 (*.f64 lambda2 -1/2) lambda2 1) (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.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 lambda2 (cos.f64 lambda1) (fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 (pow.f64 lambda2 3) -1/6))))
(fma.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 (pow.f64 lambda2 3) -1/6)) (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) lambda2 1)))
(fma.f64 (cos.f64 lambda1) (-.f64 lambda2 (*.f64 1/6 (pow.f64 lambda2 3))) (*.f64 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 -1/2) lambda2 1)))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 lambda2)
(+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))
(fma.f64 lambda1 (cos.f64 lambda2) (sin.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(fma.f64 (*.f64 -1/2 (sin.f64 lambda2)) (*.f64 lambda1 lambda1) (fma.f64 lambda1 (cos.f64 lambda2) (sin.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 (*.f64 -1/2 (sin.f64 lambda2)) (*.f64 lambda1 lambda1) (fma.f64 lambda1 (cos.f64 lambda2) (sin.f64 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 lambda2))) (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(sin.f64 (-.f64 lambda1 (neg.f64 lambda2)))
(sin.f64 (+.f64 lambda1 lambda2))

eval431.0ms (0.6%)

Compiler

Compiled 49135 to 9084 computations (81.5% saved)

prune409.0ms (0.6%)

Pruning

108 alts after pruning (107 fresh and 1 done)

PrunedKeptTotal
New1192621254
Fresh334578
Picked101
Done314
Total12291081337
Error
0.0b
Counts
1337 → 108
Alt Table
Click to see full alt table
StatusErrorProgram
17.9b
(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 lambda1)))))
10.6b
(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 (-.f64 lambda1 lambda2)))))
28.3b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))
25.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.5b
(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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
39.6b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
6.2b
(atan2.f64 (*.f64 (-.f64 (log.f64 (+.f64 1 (expm1.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.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
13.2b
(atan2.f64 (*.f64 (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 lambda2 lambda1))) 2)) (/.f64 (cos.f64 phi2) (cbrt.f64 (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)))))
10.3b
(atan2.f64 (*.f64 (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b
(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)))))
39.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
36.7b
(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))))
34.2b
(atan2.f64 (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 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)))))
11.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 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
0.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 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
34.8b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
25.9b
(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 (-.f64 phi1 lambda1) lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 lambda2 phi1))))) (cos.f64 phi2)) 2)))
33.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
0.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
29.1b
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.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 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
34.0b
(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 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 lambda1))) (cos.f64 phi2)) 2)))
20.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 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))))))
42.1b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 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)))))
33.6b
(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)))
13.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 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
38.9b
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (pow.f64 (sqrt.f64 (sin.f64 (+.f64 lambda2 lambda1))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (fma.f64 -1/6 (pow.f64 phi2 3) phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
0.8b
(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)))))))
31.8b
(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 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
14.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
39.1b
(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 lambda1))))
11.9b
(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)))))
11.6b
(atan2.f64 (*.f64 (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 1 (cos.f64 (-.f64 lambda1 lambda2))) 1))))
10.2b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
42.6b
(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)))))
20.2b
(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 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
33.9b
(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 lambda1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
35.5b
(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)))))
33.4b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
12.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
41.8b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.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)))))))
0.1b
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
46.0b
(atan2.f64 (*.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 (-.f64 lambda1 lambda2)))))
5.7b
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.6b
(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)))))
41.8b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 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)))))))
19.3b
(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 lambda2))))
31.4b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
37.5b
(atan2.f64 (*.f64 (sin.f64 (neg.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)))
44.2b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
13.0b
(atan2.f64 (*.f64 (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) 1) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
42.5b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
34.7b
(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 (-.f64 phi1 lambda1) lambda2)) (+.f64 (*.f64 lambda1 (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi1 lambda2))))) (cos.f64 phi2)) 2)))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
17.9b
(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 lambda2)))))
44.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
39.6b
(atan2.f64 (-.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
38.6b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
16.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)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
36.7b
(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))))
44.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
28.9b
(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 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) 2)))
39.5b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
36.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
33.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 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
44.0b
(atan2.f64 (*.f64 (sin.f64 lambda2) (-.f64 -1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2))) 3) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
11.6b
(atan2.f64 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
57.9b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 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)))))
41.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
43.1b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.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)))))
40.6b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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))))))
32.7b
(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 lambda2))))
33.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
44.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
39.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
31.1b
(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)))))
57.9b
(*.f64 (atan2.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 lambda1)))))) 1)
33.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.6b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
45.4b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 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)))))
33.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
22.1b
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 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)))))
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)))))
36.3b
(atan2.f64 (*.f64 (sin.f64 (neg.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))))
47.9b
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
22.1b
(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)))))
42.5b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
33.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
14.8b
(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)))))
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 lambda1)) (sin.f64 (+.f64 phi1 lambda1))) (cos.f64 phi2)) 2)))
5.9b
(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 (-.f64 lambda1 lambda2)))))
22.7b
(atan2.f64 (log.f64 (+.f64 1 (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)))))
55.9b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 phi2)) (sin.f64 (+.f64 lambda2 phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
31.7b
(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))))))
31.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
7.1b
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
42.5b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
12.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 lambda1))))
42.5b
(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)))))
57.9b
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 lambda1))))))))
Compiler

Compiled 6776 to 4396 computations (35.1% saved)

localize47.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
0.2b
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.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 166 to 24 computations (85.5% saved)

series11.0ms (0%)

Counts
2 → 44
Calls

15 calls:

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

rewrite64.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
651×prod-diff_binary64
611×log-prod_binary64
332×pow2_binary64
234×pow1/3_binary64
232×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify67.0ms (0.1%)

Algorithm
egg-herbie
Rules
764×fma-def_binary64
638×associate-+r+_binary64
489×associate-*l*_binary64
448×fma-neg_binary64
431×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0991258
12931194
29531072
338951024
Stop Event
node limit
Counts
95 → 91
Calls
Call 1
Inputs
(*.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))))))
(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 (*.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 (*.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))
Outputs
(*.f64 (cos.f64 lambda2) lambda1)
(+.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 (cos.f64 lambda2) lambda1))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6)))
(*.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 (cos.f64 lambda2) lambda1)))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6))))
(fma.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) lambda1)))
(*.f64 (cos.f64 lambda2) (+.f64 lambda1 (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 1/120 (pow.f64 lambda1 5)))))
(+.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 -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)) lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(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 (*.f64 1/24 (pow.f64 lambda2 4)) (sin.f64 lambda1))))
(+.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 (*.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 (*.f64 1/24 (pow.f64 lambda2 4)) (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))) (fma.f64 (*.f64 -1/720 (pow.f64 lambda2 6)) (sin.f64 lambda1) (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/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4))) (fma.f64 -1/720 (pow.f64 lambda2 6) 1)))
(+.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)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(-.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 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 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 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (-.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.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 -1/2 (*.f64 phi2 phi2)) (+.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 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (fma.f64 (neg.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 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) 1) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))
(+.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 -1/2 (*.f64 phi2 phi2)) (+.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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))
(*.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 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (cos.f64 phi2)))
(-.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))
(*.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 (sin.f64 lambda2) (cos.f64 phi2)) (fma.f64 1/2 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 lambda1 lambda1)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (cos.f64 phi2))))
(-.f64 (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 lambda2))) 1/2))) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 1/2 (*.f64 lambda1 (sin.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 (*.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 (sin.f64 lambda2) (cos.f64 phi2)) (fma.f64 1/2 (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 lambda1 lambda1)) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (*.f64 -1/6 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))))
(-.f64 (fma.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) (cos.f64 phi2) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2)))))) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (+.f64 -1 (*.f64 lambda1 (*.f64 lambda1 1/2)))))
(*.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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 phi2))
(+.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 (sin.f64 lambda1) (cos.f64 phi2)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 lambda2 (*.f64 (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 (*.f64 lambda2 (cos.f64 phi2)) (cos.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
(-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (cos.f64 phi2)) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
(*.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 lambda1) (cos.f64 phi2)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (cos.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))))
(*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (cos.f64 phi2))
(*.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (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 (fma.f64 -1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2))

localize22.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)))
3.1b
(sin.f64 (-.f64 lambda1 lambda2))
3.1b
(cos.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
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
phi2
@0
(-.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))))

rewrite81.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))))))

simplify65.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))

localize33.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 91 to 17 computations (81.3% saved)

series13.0ms (0%)

Counts
2 → 64
Calls

18 calls:

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

rewrite68.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
572×log-prod_binary64
476×prod-diff_binary64
388×pow-prod-down_binary64
307×pow2_binary64
222×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify69.0ms (0.1%)

Algorithm
egg-herbie
Rules
829×fma-def_binary64
754×associate-*l*_binary64
678×fma-neg_binary64
669×associate-*r*_binary64
536×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01071166
13201131
210071018
347161018
Stop Event
node limit
Counts
135 → 117
Calls
Call 1
Inputs
(cos.f64 (neg.f64 lambda1))
(+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))) (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 2))))))
(+.f64 (*.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 2)))))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
Outputs
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(+.f64 (cos.f64 lambda1) (*.f64 (neg.f64 lambda2) (neg.f64 (sin.f64 lambda1))))
(-.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 lambda1) (fma.f64 -1 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))))
(+.f64 (cos.f64 lambda1) (-.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) -1/2)) (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(fma.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (cos.f64 lambda1) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (cos.f64 lambda1) (+.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) -1/2)) (*.f64 (sin.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2)))))
(fma.f64 (neg.f64 (sin.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))
(fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (cos.f64 lambda2) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))))))
(fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))))) (fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (cos.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))) (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1) (*.f64 (neg.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) phi1) (neg.f64 (sin.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1)) (*.f64 lambda2 (*.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 (cos.f64 phi2) phi1))))
(*.f64 (*.f64 (cos.f64 phi2) phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1) (fma.f64 -1 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) phi1) (neg.f64 (sin.f64 lambda1)))) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) phi1)) (cos.f64 phi2))) (*.f64 lambda2 (*.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 (cos.f64 phi2) phi1)))))
(fma.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 lambda1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1))))
(fma.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 lambda2) phi1))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 lambda1)))))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 phi1 (sin.f64 (neg.f64 lambda1)))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1) (fma.f64 -1 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) phi1) (neg.f64 (sin.f64 lambda1)))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1))) (*.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (neg.f64 (sin.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) phi1) (-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) phi1)) (cos.f64 phi2)) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 (cos.f64 phi2) phi1))))) (*.f64 lambda2 (*.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 (cos.f64 phi2) phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda1)) phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) phi1))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) phi1) (*.f64 (cos.f64 lambda2) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) phi1) (*.f64 (cos.f64 lambda2) phi1))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))
(*.f64 (*.f64 (cos.f64 phi2) phi1) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) phi1) (fma.f64 -1/6 (*.f64 phi1 (*.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) phi1)))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) phi1)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))) (*.f64 -1/6 (*.f64 phi1 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 2)))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (*.f64 -1/2 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1))))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/2 (*.f64 (*.f64 phi1 phi2) phi2))))
(+.f64 (*.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 2))))))
(fma.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4))) (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (*.f64 -1/2 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2)))))
(fma.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1))))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 phi2 (*.f64 phi2 -1/2)))))
(+.f64 (*.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 2)))))))
(fma.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6))) (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (*.f64 -1/2 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2))))))
(fma.f64 1/24 (*.f64 phi1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi2 6) phi1)) (fma.f64 -1/2 (*.f64 phi1 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1))))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/2 (*.f64 (*.f64 phi1 phi2) phi2)))) (*.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/720 (pow.f64 phi2 6))))) (*.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 phi2 (*.f64 phi2 -1/2)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.9b
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))
3.1b
(sin.f64 (-.f64 phi1 lambda1))
3.1b
(sin.f64 (-.f64 lambda1 lambda2))
7.7b
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))
Compiler

Compiled 145 to 27 computations (81.4% saved)

series6.0ms (0%)

Counts
2 → 52
Calls

15 calls:

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

rewrite114.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
673×log-prod_binary64
505×fma-neg_binary64
271×expm1-udef_binary64
271×log1p-udef_binary64
204×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify73.0ms (0.1%)

Algorithm
egg-herbie
Rules
787×fma-def_binary64
699×fma-neg_binary64
484×unsub-neg_binary64
456×cancel-sign-sub-inv_binary64
391×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01231098
13471030
21009986
34466982
Stop Event
node limit
Counts
145 → 139
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda1))
(+.f64 (*.f64 phi1 (cos.f64 (neg.f64 lambda1))) (sin.f64 (neg.f64 lambda1)))
(+.f64 (*.f64 phi1 (cos.f64 (neg.f64 lambda1))) (+.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 lambda1))))))
(+.f64 (*.f64 phi1 (cos.f64 (neg.f64 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (neg.f64 lambda1)))) (+.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 lambda1)))))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1 (*.f64 (cos.f64 phi1) lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (*.f64 -1 (*.f64 (cos.f64 phi1) lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 lambda1 3))) (*.f64 -1 (*.f64 (cos.f64 phi1) lambda1)))))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (neg.f64 lambda1)))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (neg.f64 lambda1))) phi1) (sin.f64 (neg.f64 lambda1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (neg.f64 lambda1)))) (pow.f64 phi1 2)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (neg.f64 lambda1))) phi1) (sin.f64 (neg.f64 lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (neg.f64 lambda1)))) (pow.f64 phi1 2)) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (cos.f64 (neg.f64 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (neg.f64 lambda1))) phi1) (sin.f64 (neg.f64 lambda1))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (sin.f64 phi1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 -1 (cos.f64 phi1))) lambda1)))
(+.f64 (sin.f64 phi1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 -1 (cos.f64 phi1))) lambda1) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2)))) (pow.f64 lambda1 2)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 1/6 (cos.f64 phi1))) (pow.f64 lambda1 3)) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 -1 (cos.f64 phi1))) lambda1) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2)))) (pow.f64 lambda1 2))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1)))))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1))))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
Outputs
(sin.f64 (neg.f64 lambda1))
(neg.f64 (sin.f64 lambda1))
(+.f64 (*.f64 phi1 (cos.f64 (neg.f64 lambda1))) (sin.f64 (neg.f64 lambda1)))
(fma.f64 phi1 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda1)))
(-.f64 (*.f64 phi1 (cos.f64 lambda1)) (sin.f64 lambda1))
(+.f64 (*.f64 phi1 (cos.f64 (neg.f64 lambda1))) (+.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 lambda1))))))
(+.f64 (fma.f64 phi1 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda1))) (*.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (neg.f64 (sin.f64 lambda1))))
(fma.f64 phi1 (cos.f64 lambda1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (sin.f64 (neg.f64 lambda1))))
(fma.f64 phi1 (cos.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(+.f64 (*.f64 phi1 (cos.f64 (neg.f64 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (neg.f64 lambda1)))) (+.f64 (sin.f64 (neg.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (neg.f64 lambda1)))))))
(fma.f64 phi1 (cos.f64 lambda1) (fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 phi1 3)) (+.f64 (neg.f64 (sin.f64 lambda1)) (*.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (neg.f64 (sin.f64 lambda1))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (sin.f64 (neg.f64 lambda1))) (*.f64 (cos.f64 lambda1) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(fma.f64 (cos.f64 lambda1) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (neg.f64 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1)))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1 (*.f64 (cos.f64 phi1) lambda1)))
(+.f64 (sin.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi1)) lambda1))
(-.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (*.f64 -1 (*.f64 (cos.f64 phi1) lambda1))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi1)) lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 phi1))) (sin.f64 phi1)) (*.f64 lambda1 (cos.f64 phi1)))
(+.f64 (sin.f64 phi1) (*.f64 lambda1 (-.f64 (*.f64 lambda1 (*.f64 -1/2 (sin.f64 phi1))) (cos.f64 phi1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 lambda1 3))) (*.f64 -1 (*.f64 (cos.f64 phi1) lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1)) (+.f64 (sin.f64 phi1) (fma.f64 1/6 (*.f64 (cos.f64 phi1) (pow.f64 lambda1 3)) (*.f64 (neg.f64 (cos.f64 phi1)) lambda1))))
(+.f64 (-.f64 (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 phi1))) (sin.f64 phi1)) (*.f64 lambda1 (cos.f64 phi1))) (*.f64 (cos.f64 phi1) (*.f64 1/6 (pow.f64 lambda1 3))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1))))
(fma.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 phi1) (*.f64 (cos.f64 phi1) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) phi1))
(neg.f64 (sin.f64 (fma.f64 -1 phi1 lambda1)))
(sin.f64 (-.f64 phi1 lambda1))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (neg.f64 lambda1)))
(+.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (neg.f64 lambda1))) phi1) (sin.f64 (neg.f64 lambda1))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2))) phi1 (neg.f64 (sin.f64 lambda1))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 lambda1)))
(-.f64 (fma.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 lambda1))
(-.f64 (fma.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 lambda1))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (neg.f64 lambda1)))) (pow.f64 phi1 2)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (neg.f64 lambda1))) phi1) (sin.f64 (neg.f64 lambda1)))))
(fma.f64 (*.f64 -1/2 (+.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2))) phi1 (neg.f64 (sin.f64 lambda1)))))
(+.f64 (-.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 lambda1)) (fma.f64 (*.f64 phi1 phi1) (*.f64 -1/2 (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))))
(-.f64 (fma.f64 phi1 (*.f64 (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1)) (*.f64 phi1 -1/2)) (fma.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 lambda1))
(fma.f64 phi1 (*.f64 (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1)) (*.f64 phi1 -1/2)) (-.f64 (fma.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 lambda1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (neg.f64 lambda1)))) (pow.f64 phi1 2)) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (cos.f64 (neg.f64 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (neg.f64 lambda1))) phi1) (sin.f64 (neg.f64 lambda1))))))
(fma.f64 (*.f64 -1/2 (+.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi1 phi1) (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2))) phi1 (neg.f64 (sin.f64 lambda1))))))
(fma.f64 (*.f64 phi1 phi1) (*.f64 -1/2 (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (-.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 lambda1)) (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2)))))
(fma.f64 phi1 (*.f64 (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1)) (*.f64 phi1 -1/2)) (-.f64 (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 lambda1)))
(fma.f64 phi1 (*.f64 (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 lambda1)) (*.f64 phi1 -1/2)) (-.f64 (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 phi1 (+.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (sin.f64 phi1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 -1 (cos.f64 phi1))) lambda1)))
(+.f64 (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 lambda1 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (neg.f64 (cos.f64 phi1)))))
(+.f64 (sin.f64 phi1) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 phi1)) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 phi1) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 phi1)) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 phi1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 -1 (cos.f64 phi1))) lambda1) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2)))) (pow.f64 lambda1 2)))))
(+.f64 (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2))) (fma.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (neg.f64 (cos.f64 phi1))) lambda1 (*.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2)))))))
(+.f64 (sin.f64 phi1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 phi1)) (*.f64 lambda1 (*.f64 lambda1 (*.f64 -1/2 (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2)))))))))
(+.f64 (*.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 phi1))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 1/6 (cos.f64 phi1))) (pow.f64 lambda1 3)) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 -1 (cos.f64 phi1))) lambda1) (*.f64 (+.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2)))) (pow.f64 lambda1 2))))))
(+.f64 (sin.f64 phi1) (fma.f64 (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 (cos.f64 phi1) 1/6)) (pow.f64 lambda1 3) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda2)) (neg.f64 (cos.f64 phi1))) lambda1 (*.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2)))))))))
(+.f64 (sin.f64 phi1) (+.f64 (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 phi1)) (*.f64 lambda1 (*.f64 lambda1 (*.f64 -1/2 (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2))))))) (fma.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 (cos.f64 phi1) 1/6)) (sin.f64 (-.f64 phi1 lambda2)))))
(fma.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 lambda2 phi1)) (*.f64 (cos.f64 phi1) 1/6)) (+.f64 (*.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 phi1))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (+.f64 (sin.f64 phi1) (sin.f64 (-.f64 phi1 lambda2))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 (*.f64 -1 lambda1) phi1)) (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))))
(+.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 (neg.f64 lambda2) (cos.f64 (+.f64 lambda1 phi1)) (sin.f64 (-.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (-.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1)))))
(-.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 (sin.f64 (-.f64 lambda1 phi1)) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1)))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (+.f64 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (+.f64 lambda1 phi1))) (fma.f64 (neg.f64 lambda2) (cos.f64 (+.f64 lambda1 phi1)) (sin.f64 (-.f64 phi1 lambda1))))
(-.f64 (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (+.f64 lambda1 phi1)) (sin.f64 (-.f64 phi1 lambda1))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(-.f64 (fma.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (-.f64 phi1 lambda1))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1))))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (fma.f64 1/6 (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (pow.f64 lambda2 3)) (+.f64 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 lambda2))))))
(+.f64 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (cos.f64 (+.f64 lambda1 phi1)) (fma.f64 -1 lambda2 (*.f64 1/6 (pow.f64 lambda2 3))) (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (+.f64 lambda1 phi1)) (sin.f64 (-.f64 phi1 lambda1))))
(fma.f64 (cos.f64 (+.f64 lambda1 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2) (fma.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 (-.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda1)))

localize41.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
2.9b
(sin.f64 (+.f64 lambda2 lambda1))
3.1b
(sin.f64 (-.f64 lambda1 lambda2))
3.6b
(/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1)))
Compiler

Compiled 134 to 21 computations (84.3% saved)

series4.0ms (0%)

Counts
1 → 16
Calls

6 calls:

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

rewrite64.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
493×fma-def_binary64
482×log-prod_binary64
346×pow-prod-down_binary64
280×pow2_binary64
238×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify49.0ms (0.1%)

Algorithm
egg-herbie
Rules
557×fma-def_binary64
423×distribute-rgt-out_binary64
365×distribute-rgt-neg-out_binary64
331×+-commutative_binary64
315×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
078447
1254349
2825266
34114207
Stop Event
node limit
Counts
46 → 46
Calls
Call 1
Inputs
(pow.f64 (sin.f64 lambda1) 2)
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))) (pow.f64 lambda2 3)) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)))))))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) lambda1))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) lambda1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2)))))) (pow.f64 lambda1 3)) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) lambda1))))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
Outputs
(pow.f64 (sin.f64 lambda1) 2)
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2))
(pow.f64 (sin.f64 lambda1) 2)
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))))
(+.f64 (fma.f64 lambda2 (*.f64 0 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (*.f64 lambda2 lambda2) (*.f64 -1 (+.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))
(fma.f64 lambda2 0 (fma.f64 -1 (*.f64 lambda2 lambda2) (pow.f64 (sin.f64 lambda1) 2)))
(fma.f64 lambda2 (neg.f64 lambda2) (pow.f64 (sin.f64 lambda1) 2))
(-.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 lambda2 lambda2))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))) (pow.f64 lambda2 3)) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)))))))
(+.f64 (fma.f64 lambda2 (*.f64 0 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (*.f64 lambda2 lambda2) (*.f64 -1 (+.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))
(fma.f64 lambda2 0 (fma.f64 -1 (*.f64 lambda2 lambda2) (pow.f64 (sin.f64 lambda1) 2)))
(fma.f64 lambda2 (neg.f64 lambda2) (pow.f64 (sin.f64 lambda1) 2))
(-.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 lambda2 lambda2))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 (*.f64 -1 lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2))
(neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) lambda1))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2) (*.f64 lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(fma.f64 lambda1 (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))) (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))
(-.f64 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) (*.f64 0 (sin.f64 lambda2)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(-.f64 (*.f64 lambda1 0) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) lambda1)))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2)))) (*.f64 lambda1 lambda1) (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2) (*.f64 lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda2) (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 (neg.f64 lambda2)))) (*.f64 lambda1 lambda1) (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))) (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2))))
(-.f64 (*.f64 lambda1 (+.f64 lambda1 (*.f64 (cos.f64 lambda2) (*.f64 0 (sin.f64 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))
(*.f64 (+.f64 lambda1 (sin.f64 lambda2)) (-.f64 lambda1 (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2)))))) (pow.f64 lambda1 3)) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 (sin.f64 lambda2) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) lambda1))))
(fma.f64 (fma.f64 -1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (cos.f64 lambda2)) (fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))) (pow.f64 lambda1 3) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2)))) (*.f64 lambda1 lambda1) (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda2) (*.f64 lambda1 (fma.f64 (sin.f64 lambda2) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(fma.f64 (fma.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda2)) -2/3))) (pow.f64 lambda1 3) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda2) (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 (neg.f64 lambda2)))) (*.f64 lambda1 lambda1) (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) (+.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))) (*.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) -2/3) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) -2/3)) (pow.f64 lambda1 3) (-.f64 (*.f64 lambda1 (+.f64 lambda1 (*.f64 (cos.f64 lambda2) (*.f64 0 (sin.f64 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))
(fma.f64 (pow.f64 lambda1 3) 0 (*.f64 (+.f64 lambda1 (sin.f64 lambda2)) (-.f64 lambda1 (sin.f64 lambda2))))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda2 (*.f64 -1 lambda1))) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (fma.f64 -1 lambda2 lambda1)))
(*.f64 (sin.f64 (+.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))

eval468.0ms (0.7%)

Compiler

Compiled 53610 to 10204 computations (81% saved)

prune521.0ms (0.7%)

Pruning

110 alts after pruning (108 fresh and 2 done)

PrunedKeptTotal
New1360551415
Fresh4953102
Picked101
Done325
Total14131101523
Error
0.0b
Counts
1523 → 110
Alt Table
Click to see full alt table
StatusErrorProgram
17.9b
(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 lambda1)))))
10.6b
(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 (-.f64 lambda1 lambda2)))))
28.3b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
33.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
31.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1))))
6.2b
(atan2.f64 (*.f64 (-.f64 (log.f64 (+.f64 1 (expm1.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.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
38.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b
(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)))))
39.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
40.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 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) (cos.f64 phi2)) 2)))
11.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 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
31.3b
(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 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
36.7b
(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))))
10.3b
(atan2.f64 (*.f64 (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (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.4b
(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) (sin.f64 (-.f64 phi1 lambda2))) (cos.f64 phi2)) 2)))
31.7b
(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))))))
0.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 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
34.8b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
33.9b
(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)))))
19.3b
(atan2.f64 (*.f64 (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) 1) (/.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 lambda1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
49.2b
(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))
42.1b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 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)))))
0.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
38.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
13.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 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
38.6b
(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 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) 2)))
29.1b
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.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 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
33.6b
(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)))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
39.1b
(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 lambda1))))
45.3b
(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 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
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)))))
0.8b
(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)))))))
14.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
44.2b
(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 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
43.0b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
44.7b
(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)))))
24.3b
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (cbrt.f64 (pow.f64 (sin.f64 (+.f64 lambda2 lambda1)) 3))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
10.2b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
11.9b
(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)))))
11.6b
(atan2.f64 (*.f64 (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 1 (cos.f64 (-.f64 lambda1 lambda2))) 1))))
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)))))
20.2b
(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 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
44.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
12.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 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
37.9b
(atan2.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
39.9b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
38.1b
(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)) (cos.f64 lambda2))))
31.2b
(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 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
33.6b
(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)))))
32.6b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) 3)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
0.1b
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
46.0b
(atan2.f64 (*.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 (-.f64 lambda1 lambda2)))))
33.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
31.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
34.4b
(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 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 lambda2 phi1))))) (cos.f64 phi2)) 2)))
37.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
37.5b
(atan2.f64 (*.f64 (sin.f64 (neg.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)))
12.0b
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
19.5b
(atan2.f64 (*.f64 (/.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 lambda2 lambda1))) 2)) (/.f64 (cos.f64 phi2) (cbrt.f64 (sin.f64 (+.f64 lambda2 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
42.5b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
44.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
44.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
36.7b
(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))))
17.9b
(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 lambda2)))))
39.6b
(atan2.f64 (-.f64 lambda1 (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
37.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
16.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)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
37.1b
(atan2.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
37.1b
(atan2.f64 (*.f64 (log.f64 (exp.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)))))
42.9b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
42.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 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))))))
31.1b
(atan2.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
40.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/2 (*.f64 (*.f64 phi1 phi2) phi2))))))
42.1b
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)) (pow.f64 (sqrt.f64 (sin.f64 (+.f64 lambda2 lambda1))) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
57.9b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 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)))))
41.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
25.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 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
40.6b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (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))))))
39.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))
45.5b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (+.f64 lambda1 lambda2) phi2))) 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))))))
40.0b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.6b
(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)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
57.9b
(*.f64 (atan2.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 lambda1)))))) 1)
33.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (/.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
37.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
22.1b
(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)))))
43.0b
(atan2.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (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 lambda2))))
31.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
42.5b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
39.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2))))
13.5b
(atan2.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (+.f64 lambda2 lambda1)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 phi2)) (sin.f64 (+.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
11.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
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)))))
36.3b
(atan2.f64 (*.f64 (sin.f64 (neg.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))))
42.5b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
35.4b
(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)))
33.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
14.8b
(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)))))
33.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
5.9b
(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 (-.f64 lambda1 lambda2)))))
31.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.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 lambda1))))
32.7b
(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 lambda2))))
57.9b
(log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 lambda1))))))))
Compiler

Compiled 3284 to 2136 computations (35% saved)

regimes2.8s (4%)

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

7 calls:

956.0ms
phi2
337.0ms
(-.f64 lambda1 lambda2)
296.0ms
lambda2
278.0ms
phi1
250.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
0.1b1lambda1
0.1b1lambda2
0.1b1phi1
0.1b1phi2
0.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.1b1(-.f64 lambda1 lambda2)
0.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 6673 to 1155 computations (82.7% saved)

regimes1.6s (2.3%)

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

249.0ms
phi2
225.0ms
(-.f64 lambda1 lambda2)
208.0ms
(-.f64 lambda1 lambda2)
181.0ms
lambda1
174.0ms
phi1
Results
ErrorSegmentsBranch
0.1b1lambda1
0.1b1lambda2
0.1b1phi1
0.1b1phi2
0.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.1b1(-.f64 lambda1 lambda2)
0.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5859 to 1024 computations (82.5% saved)

regimes2.0s (2.9%)

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

7 calls:

393.0ms
lambda2
304.0ms
phi2
291.0ms
phi1
231.0ms
(-.f64 lambda1 lambda2)
217.0ms
lambda1
Results
ErrorSegmentsBranch
0.1b1lambda1
0.1b1lambda2
0.1b1phi1
0.1b1phi2
0.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.1b1(-.f64 lambda1 lambda2)
0.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5737 to 1011 computations (82.4% saved)

regimes2.8s (4%)

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

689.0ms
phi2
686.0ms
lambda1
381.0ms
lambda2
259.0ms
phi1
212.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
4.5b3lambda1
5.7b1lambda2
5.7b1phi1
2.5b3phi2
5.7b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.7b1(-.f64 lambda1 lambda2)
5.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5699 to 1006 computations (82.3% saved)

bsearch492.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
246.0ms
0.019355332082803024
0.044041460683587226
242.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.4s (3.4%)

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

734.0ms
phi2
490.0ms
lambda1
221.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)))))
214.0ms
phi1
213.0ms
lambda2
Results
ErrorSegmentsBranch
4.5b3lambda1
5.7b1lambda2
5.7b1phi1
2.6b3phi2
5.7b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.7b1(-.f64 lambda1 lambda2)
5.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5656 to 999 computations (82.3% saved)

bsearch538.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
257.0ms
0.019355332082803024
0.044041460683587226
278.0ms
-1981929946810901000.0
-81677253.88112386
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.4s (2%)

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

401.0ms
phi2
166.0ms
(-.f64 lambda1 lambda2)
155.0ms
phi1
152.0ms
lambda1
147.0ms
lambda2
Results
ErrorSegmentsBranch
5.7b1lambda1
5.7b1lambda2
5.7b1phi1
2.6b3phi2
5.7b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.7b1(-.f64 lambda1 lambda2)
5.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5471 to 986 computations (82% saved)

bsearch451.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
220.0ms
0.019355332082803024
0.044041460683587226
228.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.2s (1.7%)

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

7 calls:

177.0ms
phi2
176.0ms
phi1
157.0ms
(-.f64 lambda1 lambda2)
142.0ms
lambda2
137.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
5.7b1lambda1
5.7b1lambda2
5.7b1phi1
5.7b1phi2
5.7b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.7b1(-.f64 lambda1 lambda2)
5.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5436 to 985 computations (81.9% saved)

regimes1.1s (1.5%)

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

7 calls:

152.0ms
(-.f64 lambda1 lambda2)
142.0ms
lambda1
138.0ms
(-.f64 lambda1 lambda2)
137.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)))))
128.0ms
lambda2
Results
ErrorSegmentsBranch
5.7b1lambda1
5.7b1lambda2
5.7b1phi1
5.7b1phi2
5.7b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
5.7b1(-.f64 lambda1 lambda2)
5.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5009 to 912 computations (81.8% saved)

regimes2.3s (3.3%)

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

7 calls:

455.0ms
phi2
384.0ms
(-.f64 lambda1 lambda2)
353.0ms
phi1
317.0ms
lambda2
283.0ms
lambda1
Results
ErrorSegmentsBranch
5.6b3lambda1
5.7b3lambda2
6.2b3phi1
8.6b3phi2
10.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.6b2(-.f64 lambda1 lambda2)
8.6b2(-.f64 lambda1 lambda2)
Compiler

Compiled 4723 to 859 computations (81.8% saved)

bsearch577.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
355.0ms
1.3066090103934743e-15
4.995754943591167e-15
219.0ms
-32801.91730503366
-27.289597731134332
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.8s (2.6%)

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

7 calls:

300.0ms
phi1
292.0ms
phi2
271.0ms
lambda2
255.0ms
(-.f64 lambda1 lambda2)
222.0ms
lambda1
Results
ErrorSegmentsBranch
8.4b2lambda1
5.7b3lambda2
6.2b3phi1
8.6b3phi2
10.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.6b2(-.f64 lambda1 lambda2)
8.6b2(-.f64 lambda1 lambda2)
Compiler

Compiled 4573 to 851 computations (81.4% saved)

bsearch435.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
224.0ms
1.0336419859527047e-13
1.8064496074254971e-9
209.0ms
-45272005.50570307
-8519065.73747331
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.0s (2.9%)

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

7 calls:

365.0ms
(-.f64 lambda1 lambda2)
361.0ms
phi1
318.0ms
(-.f64 lambda1 lambda2)
308.0ms
phi2
249.0ms
lambda1
Results
ErrorSegmentsBranch
8.4b2lambda1
8.4b2lambda2
6.2b3phi1
9.3b3phi2
10.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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.9b2(-.f64 lambda1 lambda2)
8.9b2(-.f64 lambda1 lambda2)
Compiler

Compiled 4544 to 850 computations (81.3% saved)

bsearch651.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
339.0ms
1.1948233241408792e-24
8.334311122926277e-23
309.0ms
-1.3042461613231323e-6
-7.0961715256096885e-15
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes849.0ms (1.2%)

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

7 calls:

131.0ms
lambda1
130.0ms
phi1
114.0ms
(-.f64 lambda1 lambda2)
101.0ms
phi2
97.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
10.6b1lambda1
10.6b1lambda2
10.6b1phi1
10.6b1phi2
10.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
10.6b1(-.f64 lambda1 lambda2)
10.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3926 to 758 computations (80.7% saved)

regimes1.4s (2%)

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

585.0ms
phi2
190.0ms
phi1
150.0ms
(-.f64 lambda1 lambda2)
121.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)))))
112.0ms
lambda2
Results
ErrorSegmentsBranch
11.6b1lambda1
11.6b1lambda2
11.6b1phi1
9.7b3phi2
11.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3863 to 744 computations (80.7% saved)

bsearch507.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
270.0ms
0.019355332082803024
0.044041460683587226
235.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes906.0ms (1.3%)

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

261.0ms
phi2
137.0ms
(-.f64 lambda1 lambda2)
107.0ms
lambda2
98.0ms
lambda1
97.0ms
phi1
Results
ErrorSegmentsBranch
11.6b1lambda1
11.6b1lambda2
11.6b1phi1
9.7b3phi2
11.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3541 to 694 computations (80.4% saved)

bsearch448.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
217.0ms
0.019355332082803024
0.044041460683587226
229.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes737.0ms (1.1%)

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

6 calls:

266.0ms
phi2
90.0ms
phi1
87.0ms
lambda1
79.0ms
lambda2
79.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
11.6b1lambda1
11.6b1lambda2
11.6b1phi1
9.8b3phi2
11.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3385 to 679 computations (79.9% saved)

bsearch475.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
249.0ms
0.019355332082803024
0.044041460683587226
224.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes713.0ms (1%)

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

6 calls:

236.0ms
phi2
88.0ms
lambda2
88.0ms
phi1
88.0ms
lambda1
71.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
11.6b1lambda1
11.6b1lambda2
11.6b1phi1
9.8b3phi2
11.6b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
11.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2123 to 433 computations (79.6% saved)

bsearch524.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
219.0ms
0.019355332082803024
0.044041460683587226
302.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes407.0ms (0.6%)

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

5 calls:

146.0ms
phi2
61.0ms
(-.f64 lambda1 lambda2)
55.0ms
phi1
52.0ms
lambda2
47.0ms
lambda1
Results
ErrorSegmentsBranch
11.6b1lambda1
11.6b1lambda2
11.6b1phi1
9.8b3phi2
11.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1935 to 383 computations (80.2% saved)

bsearch461.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
230.0ms
0.019355332082803024
0.044041460683587226
230.0ms
-81677253.88112386
-3.2318239839870986e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes907.0ms (1.3%)

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

6 calls:

198.0ms
(-.f64 lambda1 lambda2)
196.0ms
(-.f64 lambda1 lambda2)
146.0ms
lambda2
137.0ms
phi2
129.0ms
lambda1
Results
ErrorSegmentsBranch
11.1b3lambda1
11.4b3lambda2
17.9b1phi1
12.8b3phi2
15.7b4(-.f64 lambda1 lambda2)
15.7b4(-.f64 lambda1 lambda2)
Compiler

Compiled 1918 to 387 computations (79.8% saved)

bsearch445.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
216.0ms
0.0003857462648331872
0.3682221049421287
228.0ms
-27.289597731134332
-0.002785839617092883
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes787.0ms (1.1%)

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

168.0ms
(-.f64 lambda1 lambda2)
151.0ms
(-.f64 lambda1 lambda2)
134.0ms
lambda1
128.0ms
lambda2
121.0ms
phi2
Results
ErrorSegmentsBranch
11.1b3lambda1
11.4b3lambda2
17.9b1phi1
12.8b3phi2
15.7b4(-.f64 lambda1 lambda2)
15.7b4(-.f64 lambda1 lambda2)
Compiler

Compiled 1779 to 372 computations (79.1% saved)

bsearch543.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
255.0ms
0.0003857462648331872
0.3682221049421287
287.0ms
-27.289597731134332
-0.002785839617092883
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes961.0ms (1.4%)

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

6 calls:

242.0ms
(-.f64 lambda1 lambda2)
191.0ms
(-.f64 lambda1 lambda2)
179.0ms
lambda1
134.0ms
lambda2
127.0ms
phi2
Results
ErrorSegmentsBranch
11.6b3lambda1
11.4b3lambda2
17.9b1phi1
12.8b3phi2
15.7b4(-.f64 lambda1 lambda2)
15.7b4(-.f64 lambda1 lambda2)
Compiler

Compiled 1713 to 370 computations (78.4% saved)

bsearch657.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
413.0ms
1.0336419859527047e-13
1.8064496074254971e-9
243.0ms
-7685153824302925000.0
-5377291615065462.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.1s (1.6%)

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

6 calls:

276.0ms
(-.f64 lambda1 lambda2)
216.0ms
(-.f64 lambda1 lambda2)
175.0ms
lambda2
171.0ms
lambda1
125.0ms
phi2
Results
ErrorSegmentsBranch
11.6b3lambda1
11.4b3lambda2
17.9b1phi1
12.8b3phi2
15.7b4(-.f64 lambda1 lambda2)
15.7b4(-.f64 lambda1 lambda2)
Compiler

Compiled 1691 to 369 computations (78.2% saved)

bsearch634.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
326.0ms
1.0336419859527047e-13
1.8064496074254971e-9
306.0ms
-7685153824302925000.0
-5377291615065462.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes814.0ms (1.2%)

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

6 calls:

186.0ms
lambda1
180.0ms
lambda2
173.0ms
phi2
109.0ms
(-.f64 lambda1 lambda2)
69.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
15.4b3lambda1
11.5b3lambda2
17.9b1phi1
12.9b3phi2
17.9b1(-.f64 lambda1 lambda2)
17.9b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1669 to 365 computations (78.1% saved)

bsearch492.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
278.0ms
1.0336419859527047e-13
1.8064496074254971e-9
212.0ms
-5377291615065462.0
-2844087303837.9614
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes773.0ms (1.1%)

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

5 calls:

168.0ms
phi1
163.0ms
lambda2
154.0ms
lambda1
124.0ms
phi2
85.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
17.8b3lambda1
16.7b3lambda2
19.2b3phi1
18.4b3phi2
20.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1618 to 356 computations (78% saved)

bsearch573.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
292.0ms
272515031245752.56
4.3108910621604755e+27
280.0ms
-4.813117380164443e-9
-2.4716214669488893e-17
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes965.0ms (1.4%)

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

5 calls:

757.0ms
phi2
49.0ms
phi1
45.0ms
(-.f64 lambda1 lambda2)
44.0ms
lambda2
36.0ms
lambda1
Results
ErrorSegmentsBranch
20.2b1lambda1
20.2b1lambda2
20.2b1phi1
20.2b1phi2
20.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1405 to 324 computations (76.9% saved)

regimes1.1s (1.5%)

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

6 calls:

316.0ms
phi1
196.0ms
(-.f64 lambda1 lambda2)
191.0ms
(-.f64 lambda1 lambda2)
134.0ms
lambda2
125.0ms
lambda1
Results
ErrorSegmentsBranch
28.1b3lambda1
25.3b5lambda2
21.2b3phi1
21.2b3phi2
29.0b4(-.f64 lambda1 lambda2)
29.0b4(-.f64 lambda1 lambda2)
Compiler

Compiled 921 to 230 computations (75% saved)

bsearch623.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
314.0ms
0.019355332082803024
0.044041460683587226
308.0ms
-1.60161406145746e-27
-2.2264569158490313e-32
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes737.0ms (1.1%)

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

6 calls:

141.0ms
(-.f64 lambda1 lambda2)
128.0ms
(-.f64 lambda1 lambda2)
124.0ms
lambda1
115.0ms
phi1
107.0ms
lambda2
Results
ErrorSegmentsBranch
28.1b3lambda1
25.8b5lambda2
21.5b3phi1
21.6b3phi2
29.2b4(-.f64 lambda1 lambda2)
29.2b4(-.f64 lambda1 lambda2)
Compiler

Compiled 816 to 219 computations (73.2% saved)

bsearch759.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
315.0ms
0.0010203432060950021
0.01560274737011588
444.0ms
-0.00015474683582399938
-1.3042461613231323e-6
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes308.0ms (0.4%)

Counts
24 → 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 (*.f64 (cos.f64 phi1) 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 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (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 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (neg.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) (*.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 (*.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 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (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 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.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 (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 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

60.0ms
lambda1
59.0ms
(-.f64 lambda1 lambda2)
55.0ms
(-.f64 lambda1 lambda2)
52.0ms
lambda2
35.0ms
phi1
Results
ErrorSegmentsBranch
30.1b2lambda1
29.0b4lambda2
21.5b3phi1
21.6b3phi2
29.2b4(-.f64 lambda1 lambda2)
29.2b4(-.f64 lambda1 lambda2)
Compiler

Compiled 433 to 124 computations (71.4% saved)

bsearch625.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
274.0ms
0.0010203432060950021
0.01560274737011588
351.0ms
-0.00015474683582399938
-1.3042461613231323e-6
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes68.0ms (0.1%)

Counts
20 → 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 (*.f64 (cos.f64 phi1) 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 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (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 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (neg.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) (*.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 (*.f64 (cos.f64 phi1) (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 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

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

Compiled 344 to 99 computations (71.2% saved)

regimes63.0ms (0.1%)

Counts
19 → 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 (*.f64 (cos.f64 phi1) 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 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.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 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (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 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (neg.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) (*.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)))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

12.0ms
(-.f64 lambda1 lambda2)
11.0ms
lambda2
11.0ms
phi1
11.0ms
phi2
10.0ms
lambda1
Results
ErrorSegmentsBranch
33.8b1lambda1
33.8b1lambda2
33.8b1phi1
33.8b1phi2
33.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 326 to 98 computations (69.9% saved)

regimes58.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 (-.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 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

19.0ms
phi1
16.0ms
lambda1
8.0ms
(-.f64 lambda1 lambda2)
6.0ms
phi2
6.0ms
lambda2
Results
ErrorSegmentsBranch
33.5b3lambda1
34.8b1lambda2
33.5b3phi1
34.8b1phi2
34.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 134 to 59 computations (56% saved)

bsearch543.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
298.0ms
0.0010203432060950021
0.01560274737011588
245.0ms
-4.558812452871192e-58
-2.7221599890740422e-67
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes46.0ms (0.1%)

Counts
6 → 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))))
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:

15.0ms
(-.f64 lambda1 lambda2)
14.0ms
phi1
5.0ms
phi2
5.0ms
lambda2
5.0ms
lambda1
Results
ErrorSegmentsBranch
34.8b1lambda1
34.8b1lambda2
33.5b3phi1
34.8b1phi2
34.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 107 to 52 computations (51.4% saved)

bsearch668.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
393.0ms
0.0010203432060950021
0.01560274737011588
275.0ms
-4.558812452871192e-58
-2.7221599890740422e-67
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes86.0ms (0.1%)

Accuracy

Total -12.2b remaining (-36.4%)

Threshold costs -12.2b (-36.4%)

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:

55.0ms
(-.f64 lambda1 lambda2)
13.0ms
lambda2
9.0ms
phi1
4.0ms
phi2
3.0ms
lambda1
Results
ErrorSegmentsBranch
34.8b1lambda1
34.8b1lambda2
33.6b3phi1
34.8b1phi2
34.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 51 to 34 computations (33.3% saved)

bsearch556.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
253.0ms
4.7370059059951334e-133
2.1028520909016835e-131
302.0ms
-2.7221599890740422e-67
-2.3559613177698694e-67
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify208.0ms (0.3%)

Algorithm
egg-herbie
Rules
76×*-commutative_binary64
70×+-commutative_binary64
68×sub-neg_binary64
45×distribute-rgt-neg-in_binary64
41×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02323305
13943303
25503303
36363303
46963303
57133303
67183303
77193303
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.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))))))
(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 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.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 (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 -1981929946810900992) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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)) (+.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)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (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 -4508261186278913/137438953472) (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 3312647392577801/2535301200456458802993406410752) (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)) (log1p.f64 (expm1.f64 (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 lambda1))))))
(if (<=.f64 lambda2 -6076305720978957/134217728) (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 4094677762231391/39614081257132168796771975168) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 phi1 -1539782089410939/1180591620717411303424) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 6505236940656033/5444517870735015415413993718908291383296) (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) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.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 (cos.f64 lambda1) (sin.f64 lambda2))) (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 -5481267722601813/67108864) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (+.f64 1 (cos.f64 (-.f64 lambda1 lambda2))) 1))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 lambda1 -7681338885814207/281474976710656) (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 7115762624767191/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -7681338885814207/281474976710656) (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 7115762624767191/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.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 -7685153824302924800) (atan2.f64 (*.f64 (sin.f64 (-.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)))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 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 lambda2))))))
(if (<=.f64 lambda2 -7685153824302924800) (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 lambda2))))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 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 lambda2))))))
(if (<=.f64 lambda2 -5377291615065462) (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 lambda2)))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 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 lambda2))))))
(if (<=.f64 lambda2 -1454675468429179/302231454903657293676544) (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 lambda2)))) (if (<=.f64 lambda2 4360240499932041/16) (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 (neg.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 (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 phi2 -8929296772736645/5575186299632655785383929568162090376495104) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1)))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (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 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (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 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (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 -4131449633152869/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 6057058844622275/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896) (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 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.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))))))
(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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (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 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.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 (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 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.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)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -1981929946810900992) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 -1981929946810900992) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.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)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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)) (+.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 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.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)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.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 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (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 -4508261186278913/137438953472) (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 3312647392577801/2535301200456458802993406410752) (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)) (log1p.f64 (expm1.f64 (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 lambda1))))))
(if (<=.f64 lambda1 -4508261186278913/137438953472) (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 3312647392577801/2535301200456458802993406410752) (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)) (log1p.f64 (expm1.f64 (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 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda2 -6076305720978957/134217728) (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 4094677762231391/39614081257132168796771975168) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -6076305720978957/134217728) (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 4094677762231391/39614081257132168796771975168) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (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 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 phi1 -1539782089410939/1180591620717411303424) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi1 6505236940656033/5444517870735015415413993718908291383296) (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) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (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 -1539782089410939/1180591620717411303424) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (if (<=.f64 phi1 6505236940656033/5444517870735015415413993718908291383296) (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) (-.f64 (sin.f64 lambda1) (*.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 (-.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 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.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 -5481267722601813/67108864) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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 -5481267722601813/67108864) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (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 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (+.f64 1 (cos.f64 (-.f64 lambda1 lambda2))) 1))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1) -1))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 -5481267722601813/67108864) (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 2789397323383805/144115188075855872) (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 lambda1 -7681338885814207/281474976710656) (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 7115762624767191/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -7681338885814207/281474976710656) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 7115762624767191/18446744073709551616) (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 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -7681338885814207/281474976710656) (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 7115762624767191/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.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 -7681338885814207/281474976710656) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 7115762624767191/18446744073709551616) (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 (cos.f64 phi2) (sin.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -7685153824302924800) (atan2.f64 (*.f64 (sin.f64 (-.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)))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 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 lambda2))))))
(if (<=.f64 lambda2 -7685153824302924800) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 lambda1) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda2 -7685153824302924800) (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 lambda2))))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 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 lambda2))))))
(if (<=.f64 lambda2 -7685153824302924800) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 lambda1) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda2 -5377291615065462) (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 lambda2)))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 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 lambda2))))))
(if (<=.f64 lambda2 -5377291615065462) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 4094677762231391/39614081257132168796771975168) (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 lambda1) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda2 -1454675468429179/302231454903657293676544) (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 lambda2)))) (if (<=.f64 lambda2 4360240499932041/16) (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 (neg.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 -1454675468429179/302231454903657293676544) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 4360240499932041/16) (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 (cos.f64 phi2) (sin.f64 (neg.f64 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 (-.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 phi2 -8929296772736645/5575186299632655785383929568162090376495104) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) phi1)))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi2 -8929296772736645/5575186299632655785383929568162090376495104) (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) phi1)))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (sin.f64 phi1) (neg.f64 (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 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi2 -8929296772736645/5575186299632655785383929568162090376495104) (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) phi1)))) (if (<=.f64 phi2 2789397323383805/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 phi2 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (+.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1) -1) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (+.f64 -1 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5709150553323331/36893488147419103232) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))) (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 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (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 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 147046953048303/144115188075855872) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (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 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 147046953048303/144115188075855872) (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 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3221889760492245/7067388259113537318333190002971674063309935587502475832486424805170479104) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 147046953048303/144115188075855872) (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 -4131449633152869/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 6057058844622275/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896) (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 -4131449633152869/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 6057058844622275/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896) (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 2165 to 959 computations (55.7% saved)

soundness114.0ms (0.2%)

Algorithm
egg-herbie
Rules
735×fma-def_binary64
583×associate-+l+_binary64
475×associate-*l*_binary64
450×associate-+r+_binary64
419×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01001352
12981322
29441198
337901152
Stop Event
node limit
Compiler

Compiled 93 to 68 computations (26.9% saved)

end390.0ms (0.6%)

Compiler

Compiled 2037 to 274 computations (86.5% saved)

Profiling

Loading profile data...