Distance on a great circle

Time bar (total: 16.8s)

analyze2.3s (13.6%)

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
0%0%99.8%0.2%0%0%0%9
0%0%99.8%0.2%0%0%0%10
0%0%99.8%0.2%0%0%0%11
0%0%99.8%0.2%0%0%0%12
Compiler

Compiled 71 to 47 computations (33.8% saved)

sample12.6s (75.4%)

Results
8.3s4366×body1024valid
2.2s1882×body512valid
1.4s410×body2048valid
726.0ms1593×body256valid
3.0msbody512infinite
1.0msbody256infinite
Bogosity

preprocess1.8s (11%)

Algorithm
egg-herbie
Rules
576×distribute-lft-neg-in
482×distribute-rgt-neg-in
466×fma-neg
401×distribute-rgt-in
383×*-commutative
Problems
106×No Errors
67×(sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))
63×(sin.f64 (/.f64 (-.f64 phi1 phi2) 2))
18×(-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))
(pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)
(+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02435660
15855416
214955416
340935368
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 (neg.f64 R) (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(neg.f64 (*.f64 (neg.f64 R) (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))))))))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))))))))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))))))))
(*.f64 phi1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
Outputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) R))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) R))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 (neg.f64 R) (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 (*.f64 (neg.f64 R) 2) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) -2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R -2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) R))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2)))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2))))) R))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 phi2))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 phi2))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2))) (sqrt.f64 (-.f64 1 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 phi2))) 2)))))))
(neg.f64 (*.f64 (neg.f64 R) (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) R))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))))))))
(*.f64 R (neg.f64 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2))))))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) -2))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) -2))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 (*.f64 -1/2 (+.f64 lambda1 lambda2))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) -2))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))))))))
(*.f64 (neg.f64 R) (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) 2))))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) -2))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) -2))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 (neg.f64 R) (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2)))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) 2)) 2))))) -2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) 2)) 2))))) (*.f64 R -2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 phi2))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 phi2))) 2))))) (*.f64 R -2))
(neg.f64 (*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 R (neg.f64 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2))) (sqrt.f64 (-.f64 1 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) 2)) 2))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))))) -2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))))) (*.f64 R -2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (+.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 phi2))) 2))))) (*.f64 R -2))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))))))))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 2 lambda1))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) lambda2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 2 lambda2))
(*.f64 phi1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 phi1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (cos.f64 R)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (cos.f64 R))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))))) phi1))
(*.f64 2 (*.f64 phi1 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2)))))))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 R) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 R) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2))))) (*.f64 2 phi2))
(*.f64 2 (*.f64 phi2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2)))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (+.f64 (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2)))))))
Symmetry

(negabs R)

Compiler

Compiled 396 to 206 computations (48% saved)

end0.0ms (0%)

Profiling

Loading profile data...