Details

Time bar (total: 1.3min)

analyze158.0ms (0.2%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
12.5%12.5%87.4%0.1%0%0%0%5
18.8%18.7%81.2%0.1%0%0%0%6
37.5%37.5%62.4%0.1%0%0%0%7
42.2%42.1%57.8%0.1%0%0%0%8
54.7%54.6%45.3%0.1%0%0%0%9
57.4%57.4%42.5%0.1%0%0%0%10
64.5%64.4%35.5%0.1%0%0%0%11
65.9%65.9%34%0.1%0%0%0%12
Compiler

Compiled 18 to 13 computations (27.8% saved)

sample1.4s (1.8%)

Results
740.0ms6446×body256valid
233.0ms526×body4096valid
230.0ms644×body2048valid
120.0ms422×body1024valid
42.0ms218×body512valid
Bogosity

preprocess3.1s (3.9%)

Algorithm
egglog
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) im))))
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify1.5s (1.9%)

Algorithm
egglog
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))

eval1.0ms (0%)

Compiler

Compiled 27 to 19 computations (29.6% saved)

prune2.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
14.4b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
Compiler

Compiled 12 to 9 computations (25% saved)

localize21.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
0.8b
(+.f64 (hypot.f64 re im) re)
Compiler

Compiled 39 to 16 computations (59% saved)

series95.0ms (0.1%)

Counts
2 → 32
Calls

12 calls:

TimeVariablePointExpression
2.0ms
im
@0
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
2.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
1.0ms
re
@0
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
1.0ms
re
@-inf
(+.f64 (hypot.f64 re im) re)
1.0ms
im
@0
(+.f64 (hypot.f64 re im) re)
Compiler

Compiled 7940 to 6275 computations (21% saved)

rewrite1.8s (2.4%)

Algorithm
batch-egg-rewrite
Rules
37×egg-rr
25×egg-rr
Counts
2 → 62
Calls
Call 1
Inputs
(+.f64 (hypot.f64 re im) re)
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (hypot.f64 re im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 re im) 2/3) (cbrt.f64 (hypot.f64 re im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 re im) 1 re)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (*.f64 (+.f64 1 (/.f64 re (hypot.f64 re im))) (hypot.f64 re im)) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 re) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 re im) 0) re)))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (/.f64 4 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 1 (pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) -2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) -1)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))))))

simplify2.9s (3.7%)

Algorithm
egglog
Counts
94 → 143
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 im 2))
(+.f64 (sqrt.f64 (pow.f64 im 2)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 4) (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2)) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re)))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 re) 7) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (pow.f64 im 2) 2))) (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)) 2)))))))
(+.f64 (sqrt.f64 (pow.f64 re 2)) re)
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) re))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) re)))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 6)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) re))))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2) (pow.f64 (/.f64 1 im) 3))) im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 im) 3) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) (+.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))) 2)) (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))) 2) (sqrt.f64 (pow.f64 im 2))))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))))))
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) 2))))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(-.f64 (hypot.f64 re im) (neg.f64 re))
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) 2/3) (cbrt.f64 (hypot.f64 re im)) re)
(fma.f64 1 re (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(fma.f64 re 1 (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(neg.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)))
(neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (+.f64 1 (/.f64 re (hypot.f64 re im))) (hypot.f64 re im)) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (neg.f64 re) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 (-.f64 (hypot.f64 re im) 0) re)
(fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3)))
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(/.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 3)
(pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))) 4)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (/.f64 4 2))
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) -1))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 1 (pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) -2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) -1)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
Outputs
(sqrt.f64 (pow.f64 im 2))
(fabs.f64 im)
(+.f64 (sqrt.f64 (pow.f64 im 2)) re)
(+.f64 re (fabs.f64 im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re))
(fma.f64 1/2 (/.f64 (*.f64 re re) (fabs.f64 im)) (+.f64 re (fabs.f64 im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 4) (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2)) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re)))
(+.f64 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 re 4) (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2))) (/.f64 (*.f64 re re) 2)) (fabs.f64 im)) (+.f64 re (fabs.f64 im)))
(*.f64 2 re)
(*.f64 re 2)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (*.f64 re 2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re)))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 -1/2 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re 3)) (*.f64 re 2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re))))
(fma.f64 1/2 (/.f64 (*.f64 im im) re) (fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 im im) (pow.f64 (/.f64 1 re) 5))) (fma.f64 -1/2 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re 3)) (*.f64 re 2))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (*.f64 im im)) re)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (+.f64 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (pow.f64 re 3)) (/.f64 (*.f64 im im) re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 im im) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -1/2 (+.f64 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (pow.f64 re 3)) (/.f64 (*.f64 im im) re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 re) 7) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (pow.f64 im 2) 2))) (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)) 2)))))))
(fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (*.f64 im im) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -1/2 (+.f64 (+.f64 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) -1) (pow.f64 re 3)) (/.f64 (*.f64 im im) re)) (*.f64 (pow.f64 (/.f64 -1 re) 7) (fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 4)) (pow.f64 (*.f64 -1/2 (*.f64 1/4 (pow.f64 im 4))) 2))))))
(+.f64 (sqrt.f64 (pow.f64 re 2)) re)
(+.f64 re (fabs.f64 re))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) re))
(+.f64 (fabs.f64 re) (fma.f64 1/2 (/.f64 (*.f64 im im) (fabs.f64 re)) re))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) re)))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (pow.f64 im 4)))) (fabs.f64 re)) (+.f64 re (fabs.f64 re)))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 6)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) re))))
(+.f64 (fabs.f64 re) (+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 im im)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (pow.f64 im 4)))) (fabs.f64 re)) (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (pow.f64 im 6)) (pow.f64 (fabs.f64 re) 3)) re)))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 re im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2) (pow.f64 (/.f64 1 im) 3))) im)))
(fma.f64 1/2 (/.f64 (*.f64 re re) im) (+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 1/4 (pow.f64 re 4)) (pow.f64 im 3)) im)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 im) 3) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 (*.f64 (*.f64 1/4 (pow.f64 re 4)) -1) (pow.f64 im 3)) (/.f64 (*.f64 re re) im))) (-.f64 re im))
(sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))
(sqrt.f64 (*.f64 (fabs.f64 im) 2))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (sqrt.f64 (*.f64 (fabs.f64 im) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (fabs.f64 im)) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2)) (*.f64 re re))) re) (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (sqrt.f64 (*.f64 (fabs.f64 im) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) (+.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2))))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))) 2)) (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))) 2) (sqrt.f64 (pow.f64 im 2))))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (sqrt.f64 (pow.f64 im 2)))))))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (fabs.f64 im)) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2)) (*.f64 re re))) re) (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (+.f64 (sqrt.f64 (*.f64 (fabs.f64 im) 2)) (/.f64 (/.f64 (*.f64 (pow.f64 re 3) (fma.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2) (/.f64 1/2 (fabs.f64 im)) (/.f64 (neg.f64 (/.f64 1/2 (fabs.f64 im))) (fabs.f64 im)))) (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2)))
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))
(sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))))
(+.f64 (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2)) (/.f64 (/.f64 (*.f64 1/2 (*.f64 im im)) (fabs.f64 re)) (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))))
(+.f64 (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2)) (*.f64 1/2 (/.f64 (+.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) (*.f64 (pow.f64 im 4) (-.f64 (/.f64 (neg.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 (/.f64 1/2 (fabs.f64 re)) (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2))) 2)))) (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2)))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))) 2))))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))))))))
(+.f64 (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2)) (*.f64 1/2 (+.f64 (/.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2))) (/.f64 (+.f64 (*.f64 (+.f64 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (fabs.f64 re)) (pow.f64 (/.f64 (/.f64 1/2 (fabs.f64 re)) (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2))) 2)) (pow.f64 im 4)) (*.f64 (pow.f64 im 6) (*.f64 1/2 (-.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 (/.f64 1/2 (fabs.f64 re)) (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2))) 2)) (*.f64 (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2)) 2) (fabs.f64 re))) (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (pow.f64 (fabs.f64 re) 3)))))) (neg.f64 (sqrt.f64 (/.f64 (+.f64 re (fabs.f64 re)) 1/2)))))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(+.f64 re (hypot.f64 re im))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(+.f64 re (hypot.f64 re im))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(-.f64 (hypot.f64 re im) (neg.f64 re))
(+.f64 re (hypot.f64 re im))
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(+.f64 re (hypot.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re)) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) 2/3) (cbrt.f64 (hypot.f64 re im)) re)
(fma.f64 1 re (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(fma.f64 re 1 (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(+.f64 re (hypot.f64 re im))
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(+.f64 re (hypot.f64 re im))
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(+.f64 re (hypot.f64 re im))
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(+.f64 re (hypot.f64 re im))
(neg.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)))
(+.f64 re (hypot.f64 re im))
(neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))
(+.f64 re (hypot.f64 re im))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (+.f64 1 (/.f64 re (hypot.f64 re im))) (hypot.f64 re im)) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (-.f64 (/.f64 re (hypot.f64 re im)) -1)) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re)) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re re)) (-.f64 (hypot.f64 re im) re)) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (+.f64 re (*.f64 (/.f64 (hypot.f64 re im) re) re)) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 re (hypot.f64 re im)) 0) (/.f64 1 (/.f64 1 (+.f64 re (hypot.f64 re im)))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (neg.f64 re) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (neg.f64 re) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 3) (neg.f64 (pow.f64 re 3))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2)) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2))) (+.f64 re (hypot.f64 re im)))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(+.f64 (-.f64 (hypot.f64 re im) 0) re)
(+.f64 re (hypot.f64 re im))
(fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 2/3))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 2/3)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2/3)))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 2/3)))
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(/.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 2)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3) 1/3)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 3)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 1/2)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) 1/2)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))) 4)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) (/.f64 4 2))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 1)
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 3))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) -1))
(sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 2) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 2) -1/2)) (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)))
(if (!=.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 1 (pow.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2) 0) (/.f64 1 (pow.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2) -1/2)) (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re)))) -2)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) 0) (pow.f64 (/.f64 1 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) -1) (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)))
(if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))) -1)) (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)) 0) (pow.f64 (/.f64 1 (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2))) -1) (sqrt.f64 (/.f64 (+.f64 re (hypot.f64 re im)) 1/2)))

eval126.0ms (0.2%)

Compiler

Compiled 3741 to 2396 computations (36% saved)

prune41.0ms (0.1%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New13310143
Fresh000
Picked011
Done000
Total13311144
Error
8.3b
Counts
144 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
21.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
16.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re))))
54.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
44.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
48.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
49.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 312 to 221 computations (29.2% saved)

localize25.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
0.0b
(/.f64 1 (+.f64 (hypot.f64 re im) re))
0.1b
(/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
0.8b
(+.f64 (hypot.f64 re im) re)
Compiler

Compiled 137 to 54 computations (60.6% saved)

series101.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
17.0ms
re
@-inf
(/.f64 1 (+.f64 (hypot.f64 re im) re))
1.0ms
im
@0
(/.f64 1 (+.f64 (hypot.f64 re im) re))
1.0ms
im
@-inf
(/.f64 1 (+.f64 (hypot.f64 re im) re))
1.0ms
re
@0
(/.f64 1 (+.f64 (hypot.f64 re im) re))
1.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
Compiler

Compiled 10995 to 7750 computations (29.5% saved)

rewrite1.6s (2.1%)

Algorithm
batch-egg-rewrite
Rules
56×egg-rr
51×egg-rr
36×egg-rr
Counts
3 → 143
Calls
Call 1
Inputs
(/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(/.f64 1 (+.f64 (hypot.f64 re im) re))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))) (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) -1) (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (pow.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) -1/3) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (pow.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) -3) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 -1 (/.f64 1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (/.f64 1 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) 0) (/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 2) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 2))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (*.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (-.f64 0 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (+.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 0) (+.f64 (hypot.f64 re im) re) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (+.f64 0 (*.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0))) (-.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 0)) (+.f64 0 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (*.f64 0 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (-.f64 (neg.f64 re) (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (-.f64 (neg.f64 re) (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (hypot.f64 re im) re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 0) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) -1/3) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) -3) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 0) (/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 -1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) 0) (/.f64 1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))))

simplify4.2s (5.3%)

Algorithm
egglog
Counts
215 → 283
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 im 2))
(+.f64 (sqrt.f64 (pow.f64 im 2)) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 4) (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2)) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re)))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 re) 7) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (pow.f64 im 2) 2))) (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)) 2)))))))
(+.f64 (sqrt.f64 (pow.f64 re 2)) re)
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) re))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) re)))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 6)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) re))))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2) (pow.f64 (/.f64 1 im) 3))) im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 im) 3) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(/.f64 1 (sqrt.f64 (pow.f64 im 2)))
(+.f64 (*.f64 -1 (/.f64 re (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (/.f64 1 (sqrt.f64 (pow.f64 im 2))))
(+.f64 (*.f64 -1 (/.f64 re (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (*.f64 1/2 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))))))) (+.f64 (*.f64 -1 (/.f64 re (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (*.f64 1/2 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))))
(/.f64 1/2 re)
(+.f64 (*.f64 1/2 (/.f64 1 re)) (*.f64 -1/8 (*.f64 (pow.f64 (/.f64 1 re) 3) (pow.f64 im 2))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 re) 5) (+.f64 (*.f64 -1/32 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -1/8 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))))) (+.f64 (*.f64 1/2 (/.f64 1 re)) (*.f64 -1/8 (*.f64 (pow.f64 (/.f64 1 re) 3) (pow.f64 im 2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/32 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/32 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -1/8 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))))))) (pow.f64 (/.f64 1 re) 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 re) 5) (+.f64 (*.f64 -1/32 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -1/8 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))))) (+.f64 (*.f64 1/2 (/.f64 1 re)) (*.f64 -1/8 (*.f64 (pow.f64 (/.f64 1 re) 3) (pow.f64 im 2))))))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 re (pow.f64 (pow.f64 im 2) 2)))) (*.f64 -2 (/.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 re (pow.f64 (pow.f64 im 2) 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2)) (*.f64 -2 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 im 2) 2))))) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -2 (/.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 re (pow.f64 (pow.f64 im 2) 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2)) (*.f64 -2 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 im 2) 2))))) (pow.f64 (/.f64 -1 re) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (pow.f64 (pow.f64 im 2) 2)) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (pow.f64 im 2) 2))) (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)) 2)) (pow.f64 (pow.f64 im 2) 2))) (/.f64 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (+.f64 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2)) (*.f64 -2 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 im 2) 2)))))) (pow.f64 im 2)))) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -2 (/.f64 re (pow.f64 im 2))))))
(/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))
(+.f64 (/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)) (*.f64 -1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2)))))
(+.f64 (/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (pow.f64 im 4)) (*.f64 -1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))))
(+.f64 (/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 6) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))) (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))))))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (pow.f64 im 4)) (*.f64 -1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2)))))))
(/.f64 1 im)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 2) re)) (/.f64 1 im))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 2) re)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) (pow.f64 (/.f64 1 im) 3))) (/.f64 1 im)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 2) re)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 4) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) re))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) (pow.f64 (/.f64 1 im) 3))) (/.f64 1 im))))
(/.f64 -1 im)
(-.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 2) re)) (/.f64 1 im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 3) (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))) (/.f64 1 im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 3) (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 4) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) re))))) (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 2) re)))) (/.f64 1 im))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))
(*.f64 -1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(*.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) -1)
(*.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(*.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)
(-.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(-.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 (/.f64 -1 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))
(/.f64 (/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 2)))
(/.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))) (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) -1) (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))
(/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))
(/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(/.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) -1)
(/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(/.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)
(pow.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 3)
(pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1)
(pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)
(cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3))
(neg.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(neg.f64 (-.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))
(neg.f64 (-.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0))
(neg.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) 3))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (pow.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) -1/3) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (pow.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) -3) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 -1 (/.f64 1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (/.f64 1 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) 0) (/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 2) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 2))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 -1 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (*.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (+.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (-.f64 0 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (+.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 0) (+.f64 (hypot.f64 re im) re) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 1 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(+.f64 0 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (+.f64 0 (*.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0))) (-.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 0)) (+.f64 0 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))))
(*.f64 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (*.f64 0 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))
(*.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(*.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) -1)
(*.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)
(-.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)
(-.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(-.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(/.f64 -1 (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) -1)
(/.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (-.f64 (neg.f64 re) (hypot.f64 re im))))
(/.f64 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))
(/.f64 (/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 2)))
(/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 1 (+.f64 (hypot.f64 re im) re))
(/.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(pow.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 3)
(pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)
(cbrt.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3))
(neg.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(neg.f64 (-.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0))
(neg.f64 (-.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 -1 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 0) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) -1/3) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) -3) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 0) (/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 -1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) 0) (/.f64 1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 1 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(+.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)
(+.f64 0 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1)
(*.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1)
(/.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 3)
(pow.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)
(pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1) 2)
(pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 4)
(pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 3))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 3))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
Outputs
(sqrt.f64 (pow.f64 im 2))
(fabs.f64 im)
(+.f64 (sqrt.f64 (pow.f64 im 2)) re)
(+.f64 (fabs.f64 im) re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re))
(fma.f64 1/2 (/.f64 (pow.f64 re 2) (fabs.f64 im)) (+.f64 (fabs.f64 im) re))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 4) (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2)) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (sqrt.f64 (pow.f64 im 2)) re)))
(+.f64 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2) (pow.f64 re 4))) (*.f64 (pow.f64 re 2) 1/2)) (fabs.f64 im)) (+.f64 (fabs.f64 im) re))
(*.f64 2 re)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 2 re))
(fma.f64 1/2 (/.f64 (pow.f64 im 2) re) (*.f64 2 re))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re)))
(fma.f64 1/2 (/.f64 (pow.f64 im 2) re) (fma.f64 -1/2 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re 3)) (*.f64 2 re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 1 re) 3))) (*.f64 2 re))))
(fma.f64 1/2 (/.f64 (pow.f64 im 2) re) (fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 re -1) 5))) (fma.f64 -1/2 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 re 3)) (*.f64 2 re))))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)))
(*.f64 -1/2 (+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (/.f64 -1 (pow.f64 re 3))) (/.f64 (pow.f64 im 2) re)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re))))
(fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -1/2 (+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (/.f64 -1 (pow.f64 re 3))) (/.f64 (pow.f64 im 2) re))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (/.f64 -1 re) 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 re) 7) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (pow.f64 im 2) 2))) (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)) 2)))))))
(fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -1/2 (+.f64 (+.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (/.f64 -1 (pow.f64 re 3))) (/.f64 (pow.f64 im 2) re)) (*.f64 (pow.f64 (/.f64 -1 re) 7) (fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 4)) (*.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 4)) 2) 1/4))))))
(+.f64 (sqrt.f64 (pow.f64 re 2)) re)
(+.f64 (fabs.f64 re) re)
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) re))
(+.f64 (fabs.f64 re) (fma.f64 1/2 (/.f64 (pow.f64 im 2) (fabs.f64 re)) re))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) re)))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 4) (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)))) (fabs.f64 re)) (+.f64 (fabs.f64 re) re))
(+.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 4)) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 im 6)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) re))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (pow.f64 im 2)) (*.f64 -1/2 (*.f64 (pow.f64 im 4) (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)))) (fabs.f64 re)) (+.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (pow.f64 im 6)) (pow.f64 (fabs.f64 re) 3)) re) (fabs.f64 re)))
im
(+.f64 re im)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re im))
(fma.f64 1/2 (/.f64 (pow.f64 re 2) im) (+.f64 re im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) im)) (+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2) (pow.f64 (/.f64 1 im) 3))) im)))
(fma.f64 1/2 (/.f64 (pow.f64 re 2) im) (+.f64 re (fma.f64 -1/2 (/.f64 (*.f64 1/4 (pow.f64 re 4)) (pow.f64 im 3)) im)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (/.f64 -1 im) 3) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im))))
(+.f64 re (-.f64 (*.f64 -1/2 (+.f64 (*.f64 (*.f64 1/4 (pow.f64 re 4)) (/.f64 -1 (pow.f64 im 3))) (/.f64 (pow.f64 re 2) im))) im))
(/.f64 1 (sqrt.f64 (pow.f64 im 2)))
(pow.f64 (fabs.f64 im) -1)
(+.f64 (*.f64 -1 (/.f64 re (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (/.f64 1 (sqrt.f64 (pow.f64 im 2))))
(-.f64 (pow.f64 (fabs.f64 im) -1) (/.f64 re (pow.f64 (fabs.f64 im) 2)))
(+.f64 (*.f64 -1 (/.f64 re (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (*.f64 1/2 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))))))
(-.f64 (+.f64 (pow.f64 (fabs.f64 im) -1) (/.f64 (*.f64 (pow.f64 re 2) 1/2) (pow.f64 (fabs.f64 im) 3))) (/.f64 re (pow.f64 (fabs.f64 im) 2)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))))))) (+.f64 (*.f64 -1 (/.f64 re (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (*.f64 1/2 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))))
(-.f64 (-.f64 (+.f64 (pow.f64 (fabs.f64 im) -1) (/.f64 (*.f64 (pow.f64 re 2) 1/2) (pow.f64 (fabs.f64 im) 3))) (/.f64 re (pow.f64 (fabs.f64 im) 2))) (*.f64 (+.f64 (/.f64 1/4 (*.f64 (fabs.f64 im) (pow.f64 (fabs.f64 im) 4))) (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2)) (pow.f64 (fabs.f64 im) 3))) (pow.f64 re 4)))
(/.f64 1/2 re)
(+.f64 (*.f64 1/2 (/.f64 1 re)) (*.f64 -1/8 (*.f64 (pow.f64 (/.f64 1 re) 3) (pow.f64 im 2))))
(+.f64 (/.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (pow.f64 re 3))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 re) 5) (+.f64 (*.f64 -1/32 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -1/8 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))))) (+.f64 (*.f64 1/2 (/.f64 1 re)) (*.f64 -1/8 (*.f64 (pow.f64 (/.f64 1 re) 3) (pow.f64 im 2)))))
(-.f64 (+.f64 (/.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (pow.f64 re 3)))) (*.f64 (pow.f64 (pow.f64 re -1) 5) (fma.f64 -1/32 (pow.f64 im 4) (*.f64 -1/8 (*.f64 1/4 (pow.f64 im 4))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/32 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))) (*.f64 -1/4 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 -1/32 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -1/8 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))))))) (pow.f64 (/.f64 1 re) 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 re) 5) (+.f64 (*.f64 -1/32 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -1/8 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))))) (+.f64 (*.f64 1/2 (/.f64 1 re)) (*.f64 -1/8 (*.f64 (pow.f64 (/.f64 1 re) 3) (pow.f64 im 2))))))
(-.f64 (-.f64 (+.f64 (/.f64 1/2 re) (*.f64 -1/8 (/.f64 (pow.f64 im 2) (pow.f64 re 3)))) (*.f64 (pow.f64 (pow.f64 re -1) 5) (fma.f64 -1/32 (pow.f64 im 4) (*.f64 -1/8 (*.f64 1/4 (pow.f64 im 4)))))) (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 2)) (+.f64 1/32 1/16)) (*.f64 (*.f64 -1/4 (pow.f64 im 2)) (fma.f64 -1/32 (pow.f64 im 4) (*.f64 -1/8 (*.f64 1/4 (pow.f64 im 4)))))) (pow.f64 (pow.f64 re -1) 7)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 re (pow.f64 (pow.f64 im 2) 2)))) (*.f64 -2 (/.f64 re (pow.f64 im 2))))
(*.f64 -2 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) re)) (/.f64 re (pow.f64 im 2))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 re (pow.f64 (pow.f64 im 2) 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2)) (*.f64 -2 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 im 2) 2))))) (pow.f64 (/.f64 -1 re) 3))) (*.f64 -2 (/.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 2)) (/.f64 (*.f64 -2 (pow.f64 (*.f64 1/4 (pow.f64 im 4)) 2)) (pow.f64 (pow.f64 im 2) 3))) (pow.f64 (pow.f64 re 3) -1)) (*.f64 -2 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) re)) (/.f64 re (pow.f64 im 2)))))
(+.f64 (*.f64 -2 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (*.f64 re (pow.f64 (pow.f64 im 2) 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2)) (*.f64 -2 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 im 2) 2))))) (pow.f64 (/.f64 -1 re) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (pow.f64 (pow.f64 im 2) 2)) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 (pow.f64 im 2) 2))) (pow.f64 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)) 2)) (pow.f64 (pow.f64 im 2) 2))) (/.f64 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (+.f64 (/.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2)) (*.f64 -2 (/.f64 (pow.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) 2) (*.f64 (pow.f64 im 2) (pow.f64 (pow.f64 im 2) 2)))))) (pow.f64 im 2)))) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -2 (/.f64 re (pow.f64 im 2))))))
(+.f64 (-.f64 (*.f64 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 2)) (/.f64 (*.f64 -2 (pow.f64 (*.f64 1/4 (pow.f64 im 4)) 2)) (pow.f64 (pow.f64 im 2) 3))) (pow.f64 (pow.f64 re 3) -1)) (*.f64 (+.f64 (/.f64 (+.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 4)) 2) (*.f64 -2 (fma.f64 1/4 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 4)) (*.f64 (pow.f64 (*.f64 1/4 (pow.f64 im 4)) 2) 1/4)))) (pow.f64 im 4)) (/.f64 (*.f64 (*.f64 1/4 (pow.f64 im 4)) (+.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (pow.f64 im 2)) (/.f64 (*.f64 -2 (pow.f64 (*.f64 1/4 (pow.f64 im 4)) 2)) (pow.f64 (pow.f64 im 2) 3)))) (pow.f64 im 2))) (pow.f64 (/.f64 -1 re) 5))) (*.f64 -2 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 im 4)) (*.f64 (pow.f64 im 4) re)) (/.f64 re (pow.f64 im 2)))))
(/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re))
(pow.f64 (+.f64 (fabs.f64 re) re) -1)
(+.f64 (/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)) (*.f64 -1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2)))))
(+.f64 (pow.f64 (+.f64 (fabs.f64 re) re) -1) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (fabs.f64 re) (pow.f64 (+.f64 (fabs.f64 re) re) 2))))
(+.f64 (/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (pow.f64 im 4)) (*.f64 -1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))))
(+.f64 (pow.f64 (+.f64 (fabs.f64 re) re) -1) (fma.f64 (-.f64 (/.f64 1/4 (*.f64 (+.f64 (fabs.f64 re) re) (*.f64 (pow.f64 (fabs.f64 re) 2) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (*.f64 (fabs.f64 re) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (pow.f64 im 4) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (fabs.f64 re) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))))
(+.f64 (/.f64 1 (+.f64 (sqrt.f64 (pow.f64 re 2)) re)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 im 6) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (+.f64 (sqrt.f64 (pow.f64 re 2)) re)))) (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))))))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2))))) (pow.f64 im 4)) (*.f64 -1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (+.f64 (sqrt.f64 (pow.f64 re 2)) re) 2)))))))
(+.f64 (pow.f64 (+.f64 (fabs.f64 re) re) -1) (-.f64 (fma.f64 (-.f64 (/.f64 1/4 (*.f64 (+.f64 (fabs.f64 re) re) (*.f64 (pow.f64 (fabs.f64 re) 2) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (*.f64 (fabs.f64 re) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (pow.f64 im 4) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) (*.f64 (fabs.f64 re) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (*.f64 (pow.f64 im 6) (fma.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (*.f64 (+.f64 (fabs.f64 re) re) (*.f64 (pow.f64 (fabs.f64 re) 2) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (*.f64 (+.f64 (fabs.f64 re) re) (*.f64 (pow.f64 (fabs.f64 re) 2) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (*.f64 (fabs.f64 re) (pow.f64 (+.f64 (fabs.f64 re) re) 2)))) (*.f64 (fabs.f64 re) (+.f64 (fabs.f64 re) re))) (/.f64 (*.f64 1/4 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (*.f64 (pow.f64 (fabs.f64 re) 3) (pow.f64 (+.f64 (fabs.f64 re) re) 2))))))))
(/.f64 1 im)
(pow.f64 im -1)
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 2) re)) (/.f64 1 im))
(-.f64 (pow.f64 im -1) (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 2) re)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) (pow.f64 (/.f64 1 im) 3))) (/.f64 1 im)))
(+.f64 (/.f64 (*.f64 (pow.f64 re 2) 1/2) (pow.f64 im 3)) (-.f64 (pow.f64 im -1) (*.f64 (pow.f64 (pow.f64 im -1) 2) re)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 2) re)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 1 im) 4) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) re))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) (pow.f64 (/.f64 1 im) 3))) (/.f64 1 im))))
(-.f64 (-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 re 2) 1/2) (pow.f64 im 3)) (pow.f64 im -1)) (*.f64 (pow.f64 (/.f64 -1 im) 4) (-.f64 (*.f64 -1/2 (pow.f64 re 3)) (*.f64 -1/2 (pow.f64 re 3))))) (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(/.f64 -1 im)
(-.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 2) re)) (/.f64 1 im))
(+.f64 (neg.f64 (*.f64 (pow.f64 (pow.f64 im -1) 2) re)) (/.f64 -1 im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 3) (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))))) (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))) (/.f64 1 im))
(+.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 im 3)) (*.f64 (pow.f64 (pow.f64 im -1) 2) re)) (/.f64 -1 im))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 3) (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 4) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 re 2)) (*.f64 -1 (pow.f64 re 2))) re)) (*.f64 -1/2 (*.f64 (pow.f64 re 2) re))))) (*.f64 -1 (*.f64 (pow.f64 (/.f64 -1 im) 2) re)))) (/.f64 1 im))
(+.f64 (-.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 im 3)) (*.f64 (pow.f64 (/.f64 -1 im) 4) (-.f64 (*.f64 -1/2 (pow.f64 re 3)) (*.f64 -1/2 (pow.f64 re 3))))) (*.f64 (pow.f64 (pow.f64 im -1) 2) re)) (/.f64 -1 im))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (-.f64 (hypot.f64 re im) (*.f64 -1 re)) 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(*.f64 -1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(*.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) -1)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(*.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(*.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(-.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(-.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 (/.f64 -1 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))
(/.f64 -1 (neg.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 3)))))
(/.f64 (/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 2)))
(cbrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))
(/.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))) (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) -1) (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))
(cbrt.f64 (/.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))
(/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) -1)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(/.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(pow.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) 1/3)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(pow.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 3)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 1)
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(neg.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(neg.f64 (-.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(neg.f64 (-.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(neg.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) 3))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 -1 (pow.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (pow.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) -1/3) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) 3)) 0) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) 3)) -1/3) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (pow.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) -3) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) -3) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 -1 (/.f64 1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 -1 (pow.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (/.f64 1 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 0) (/.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 2) (pow.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) 0) (/.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 2) 0) (/.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 2) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 0) (/.f64 1 (cbrt.f64 (/.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 2) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 2))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 2)) 0) (/.f64 (cbrt.f64 (/.f64 1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (cbrt.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) 2)))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 -1 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 -1 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (*.f64 (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (cbrt.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (+.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 (-.f64 0 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2)) (+.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (pow.f64 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2) (*.f64 0 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (+.f64 (hypot.f64 re im) re) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 0) (+.f64 (hypot.f64 re im) re) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 0) (+.f64 (hypot.f64 re im) re) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(if (!=.f64 1 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 1 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))
(+.f64 (/.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(+.f64 0 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))
(/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (+.f64 0 (*.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0))) (-.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 0)) (+.f64 0 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))
(/.f64 -1 (cbrt.f64 (pow.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 3)))
(*.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (*.f64 0 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) -1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(-.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(-.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(-.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(/.f64 -1 (-.f64 (neg.f64 re) (hypot.f64 re im)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(/.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) -1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(/.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (cbrt.f64 (-.f64 (neg.f64 re) (hypot.f64 re im))))
(/.f64 -1 (cbrt.f64 (pow.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 3)))
(/.f64 (cbrt.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (neg.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))))
(/.f64 -1 (cbrt.f64 (pow.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 3)))
(/.f64 (/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 2)))
(cbrt.f64 (/.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) 2)))
(/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(/.f64 -1 (cbrt.f64 (pow.f64 (-.f64 (neg.f64 re) (hypot.f64 re im)) 3)))
(/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(/.f64 1 (+.f64 (hypot.f64 re im) re))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(/.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(pow.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 1/3)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(pow.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 3)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 1)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(cbrt.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(neg.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(neg.f64 (-.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(neg.f64 (-.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 -1 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 -1 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 1 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1) 0) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 0) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) -1/3) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 0) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) -1/3) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) -3) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) -3) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)))) (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2)) 0) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2)))) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 1 (/.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (/.f64 1 (cbrt.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2) (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) 0) (/.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (cbrt.f64 (pow.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 2))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2) 0) (cbrt.f64 (/.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 2))) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (cbrt.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (cbrt.f64 (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) 0) (cbrt.f64 (/.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)))) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 -1 (/.f64 1 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (/.f64 -1 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2)) (+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) 0) (/.f64 1 (+.f64 (hypot.f64 re im) re))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 0 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 0 (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 0 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) 3) (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 3)) (+.f64 (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im)))) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (*.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 0 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 3) 0) (+.f64 (pow.f64 (/.f64 -1 (+.f64 (hypot.f64 re im) re)) 2) (+.f64 0 (*.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) -1) 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(if (!=.f64 1 0) (/.f64 1 (+.f64 (hypot.f64 re im) re)) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 1 0) (pow.f64 (+.f64 (hypot.f64 re im) re) -1) (pow.f64 (+.f64 (hypot.f64 re im) re) -1))
(+.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) 0)
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(+.f64 0 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(+.f64 (/.f64 0 (-.f64 (neg.f64 re) (hypot.f64 re im))) (/.f64 1 (+.f64 (hypot.f64 re im) re)))
(pow.f64 (+.f64 (hypot.f64 re im) re) -1)
(fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 3)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))) 1/2)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) -1) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 4)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 3))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) 3))
(sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 -1 (/.f64 -1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re)))))

localize7.0ms (0%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize12.0ms (0%)

Compiler

Compiled 27 to 22 computations (18.5% saved)

localize9.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (-.f64 re im)))
Compiler

Compiled 28 to 15 computations (46.4% saved)

series33.0ms (0%)

Counts
1 → 8
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@0
(sqrt.f64 (*.f64 2 (-.f64 re im)))
0.0ms
re
@inf
(sqrt.f64 (*.f64 2 (-.f64 re im)))
0.0ms
im
@0
(sqrt.f64 (*.f64 2 (-.f64 re im)))
0.0ms
im
@inf
(sqrt.f64 (*.f64 2 (-.f64 re im)))
0.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (-.f64 re im)))
Compiler

Compiled 3465 to 2590 computations (25.3% saved)

rewrite1.5s (1.9%)

Algorithm
batch-egg-rewrite
Rules
29×egg-rr
Counts
1 → 29
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (-.f64 re im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3) (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3)) (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))) (*.f64 -1 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (-.f64 re im) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 re im) 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (/.f64 4 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) -1/2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (-.f64 re im) 1/2) 0) (/.f64 1 (pow.f64 (/.f64 (-.f64 re im) 1/2) -1/2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))))

simplify2.0s (2.5%)

Algorithm
egglog
Counts
37 → 46
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -2 im))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im))))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2)) (sqrt.f64 (*.f64 -2 im))))))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (pow.f64 re 3)) (*.f64 (sqrt.f64 (*.f64 -2 im)) (pow.f64 (sqrt.f64 (*.f64 -2 im)) 2)))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2)) (sqrt.f64 (*.f64 -2 im)))))))
(sqrt.f64 (*.f64 2 re))
(+.f64 (*.f64 -1 (/.f64 im (sqrt.f64 (*.f64 2 re)))) (sqrt.f64 (*.f64 2 re)))
(+.f64 (*.f64 -1 (/.f64 im (sqrt.f64 (*.f64 2 re)))) (+.f64 (sqrt.f64 (*.f64 2 re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (*.f64 2 re))) 2) (pow.f64 im 2)) (sqrt.f64 (*.f64 2 re))))))
(+.f64 (*.f64 -1 (/.f64 im (sqrt.f64 (*.f64 2 re)))) (+.f64 (sqrt.f64 (*.f64 2 re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (*.f64 2 re))) 2) (pow.f64 im 2)) (sqrt.f64 (*.f64 2 re)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 -1 (sqrt.f64 (*.f64 2 re))) 2)) (*.f64 (sqrt.f64 (*.f64 2 re)) (pow.f64 (sqrt.f64 (*.f64 2 re)) 2)))))))
(fabs.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3) (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3)) (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 2)
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -1))
(*.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))) (*.f64 -1 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))
(*.f64 1 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(*.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)
(*.f64 (/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1) -1)
(/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(sqrt.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2))
(pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 3) 1/3)
(pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 3)
(pow.f64 (/.f64 (-.f64 re im) 1/2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))) 4)
(pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (/.f64 4 2))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 3))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) -1/2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (/.f64 (-.f64 re im) 1/2) 0) (/.f64 1 (pow.f64 (/.f64 (-.f64 re im) 1/2) -1/2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
Outputs
(sqrt.f64 (*.f64 -2 im))
(sqrt.f64 (*.f64 im -2))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im))))
(+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2))))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2)) (sqrt.f64 (*.f64 -2 im))))))
(+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 (-.f64 re (*.f64 1/2 (pow.f64 (/.f64 re (sqrt.f64 (*.f64 im -2))) 2))) (sqrt.f64 (*.f64 im -2))))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (pow.f64 re 3)) (*.f64 (sqrt.f64 (*.f64 -2 im)) (pow.f64 (sqrt.f64 (*.f64 -2 im)) 2)))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2)) (sqrt.f64 (*.f64 -2 im)))))))
(+.f64 (sqrt.f64 (*.f64 im -2)) (fma.f64 1/2 (pow.f64 (/.f64 (*.f64 re (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 im -2)) -2))) (sqrt.f64 (*.f64 im -2))) 3) (/.f64 (-.f64 re (*.f64 1/2 (pow.f64 (/.f64 re (sqrt.f64 (*.f64 im -2))) 2))) (sqrt.f64 (*.f64 im -2)))))
(sqrt.f64 (*.f64 2 re))
(+.f64 (*.f64 -1 (/.f64 im (sqrt.f64 (*.f64 2 re)))) (sqrt.f64 (*.f64 2 re)))
(-.f64 (sqrt.f64 (*.f64 2 re)) (/.f64 im (sqrt.f64 (*.f64 2 re))))
(+.f64 (*.f64 -1 (/.f64 im (sqrt.f64 (*.f64 2 re)))) (+.f64 (sqrt.f64 (*.f64 2 re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (*.f64 2 re))) 2) (pow.f64 im 2)) (sqrt.f64 (*.f64 2 re))))))
(+.f64 (sqrt.f64 (*.f64 2 re)) (/.f64 (+.f64 (neg.f64 im) (*.f64 -1/2 (pow.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) 2))) (sqrt.f64 (*.f64 2 re))))
(+.f64 (*.f64 -1 (/.f64 im (sqrt.f64 (*.f64 2 re)))) (+.f64 (sqrt.f64 (*.f64 2 re)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (/.f64 -1 (sqrt.f64 (*.f64 2 re))) 2) (pow.f64 im 2)) (sqrt.f64 (*.f64 2 re)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 -1 (sqrt.f64 (*.f64 2 re))) 2)) (*.f64 (sqrt.f64 (*.f64 2 re)) (pow.f64 (sqrt.f64 (*.f64 2 re)) 2)))))))
(-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) 2) (*.f64 (pow.f64 im 3) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 re)) -2) 2))) (sqrt.f64 (*.f64 2 re))) (sqrt.f64 (*.f64 2 re))) (/.f64 im (sqrt.f64 (*.f64 2 re))))
(fabs.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3) (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3)) (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (fabs.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2/3)))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 2)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -1))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))) (*.f64 -1 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 1 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1) -1)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(/.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(sqrt.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 3) 1/3)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 2)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 3)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (/.f64 (-.f64 re im) 1/2) 1/2)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 1/2)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))) 4)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) (/.f64 4 2))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 1)
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(cbrt.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 3))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1))
(sqrt.f64 (/.f64 (-.f64 re im) 1/2))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) -2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2))) 0) (pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1) -1) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 2) -1/2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (/.f64 (-.f64 re im) 1/2) 0) (/.f64 1 (pow.f64 (/.f64 (-.f64 re im) 1/2) -1/2)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1)) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))
(if (!=.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) 0) (pow.f64 (pow.f64 (sqrt.f64 (/.f64 (-.f64 re im) 1/2)) -1) -1) (sqrt.f64 (/.f64 (-.f64 re im) 1/2)))

localize20.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (/.f64 (*.f64 re re) im))
0.0b
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))
7.2b
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))))
8.9b
(/.f64 (*.f64 re re) im)
Compiler

Compiled 79 to 32 computations (59.5% saved)

series74.0ms (0.1%)

Counts
4 → 78
Calls

24 calls:

TimeVariablePointExpression
3.0ms
im
@0
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))))
1.0ms
re
@0
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))))
1.0ms
re
@inf
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))))
1.0ms
re
@0
(/.f64 (*.f64 re re) im)
1.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))))
Compiler

Compiled 7050 to 5215 computations (26% saved)

rewrite1.6s (2%)

Algorithm
batch-egg-rewrite
Rules
86×egg-rr
50×egg-rr
50×egg-rr
17×egg-rr
Counts
4 → 203
Calls
Call 1
Inputs
(/.f64 (*.f64 re re) im)
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im))
(*.f64 -1/2 (/.f64 (*.f64 re re) im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (/.f64 (pow.f64 re 2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 im -1)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re (cbrt.f64 im)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re 2) (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im -1) (pow.f64 re 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (neg.f64 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 re 2)) (/.f64 -1 im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (neg.f64 im)) (/.f64 (neg.f64 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (neg.f64 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re 2) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 im -1)) (pow.f64 re 2)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 re (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re (cbrt.f64 im)) re) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (pow.f64 re 2) 2))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (neg.f64 (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (neg.f64 (cbrt.f64 (pow.f64 re 2)))) (neg.f64 (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 re 2)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 re 2) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2))) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1 (/.f64 (neg.f64 im) (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) 2) 0) (/.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (/.f64 (neg.f64 im) (pow.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) 2))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (/.f64 (neg.f64 im) (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 re (cbrt.f64 re)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (/.f64 (pow.f64 re 2) im) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 2)) re))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 re) 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3) (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))) (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 2)) (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (-.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (+.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (-.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (+.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) im)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (-.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1/2 (cbrt.f64 im)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (-.f64 im re) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 re im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1 (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 re im) 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 re 2) im) -1/2 (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 2) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)))) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))) (+.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (+.f64 1 (/.f64 (neg.f64 im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im)))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 re im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 1) (neg.f64 im))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (cbrt.f64 im)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re 2) (/.f64 -1/2 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 re 2)) (/.f64 -1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) im) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -1/2 (cbrt.f64 im)) (pow.f64 re 2)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re 2) (/.f64 im -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 1/2 (pow.f64 re 2))) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (neg.f64 (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 re 2)) (/.f64 (neg.f64 im) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (pow.f64 re 2)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 1/2 (pow.f64 re 2)) 1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 2)) -1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1/2 0) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 -1/2) (/.f64 im (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 -1/2 (pow.f64 re 2)) 0) (/.f64 1 (/.f64 im (*.f64 -1/2 (pow.f64 re 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) 2) 0) (/.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) (/.f64 im (pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 re 2))) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))))

simplify4.9s (6.3%)

Algorithm
egglog
Counts
281 → 284
Calls
Call 1
Inputs
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(sqrt.f64 (*.f64 -2 im))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im)) (pow.f64 re 3)) (*.f64 (sqrt.f64 (*.f64 -2 im)) (pow.f64 (sqrt.f64 (*.f64 -2 im)) 2)))))))
(*.f64 re (sqrt.f64 (/.f64 -1 im)))
(*.f64 -1 (*.f64 re (sqrt.f64 (/.f64 -1 im))))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (/.f64 re im) re)
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (/.f64 (pow.f64 re 2) im)))
(*.f64 (cbrt.f64 (pow.f64 im -1)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (/.f64 re (cbrt.f64 im)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))
(*.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) im))
(*.f64 re (/.f64 re im))
(*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(*.f64 (pow.f64 re 2) (pow.f64 im -1))
(*.f64 (pow.f64 im -1) (pow.f64 re 2))
(*.f64 -1 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(*.f64 1 (/.f64 (pow.f64 re 2) im))
(*.f64 (/.f64 (pow.f64 re 2) im) 1)
(*.f64 (neg.f64 (pow.f64 re 2)) (/.f64 -1 im))
(-.f64 (/.f64 0 (neg.f64 im)) (/.f64 (neg.f64 (pow.f64 re 2)) im))
(-.f64 0 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(/.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im -1)) (pow.f64 re 2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 re (/.f64 re (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))
(/.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))) (cbrt.f64 im))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (/.f64 re (cbrt.f64 im)) re) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (pow.f64 re 2) 2))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (neg.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (neg.f64 (cbrt.f64 im)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (neg.f64 (cbrt.f64 (pow.f64 re 2)))) (neg.f64 (cbrt.f64 im)))
(/.f64 (neg.f64 (pow.f64 re 2)) (neg.f64 im))
(pow.f64 (/.f64 (pow.f64 re 2) im) 1)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) 3)
(pow.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3))
(neg.f64 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 re 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2))) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1 (/.f64 (neg.f64 im) (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) 2) 0) (/.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (/.f64 (neg.f64 im) (pow.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (/.f64 (neg.f64 im) (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 re (cbrt.f64 re)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 1 0) (/.f64 (pow.f64 re 2) im) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 2)) re))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 re) 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(fabs.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(*.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3) (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))
(*.f64 1 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(*.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(/.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))
(sqrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2))
(pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(pow.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 3)
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3) 1/3)
(cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))) (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 2)) (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (-.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (+.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (-.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (+.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))
(*.f64 -1 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))
(*.f64 1 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)
(-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)
(-.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))
(-.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im) (neg.f64 re))
(-.f64 (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) im)
(-.f64 (+.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (-.f64 im re))
(-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 im re))
(-.f64 0 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))
(/.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)
(fma.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4) (-.f64 re im))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (cbrt.f64 im)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1) (-.f64 re im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 -1 (-.f64 im re) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 1 re (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 1 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 1 (-.f64 re im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (-.f64 re im))
(fma.f64 re 1 (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 re 1 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1 (-.f64 re im))
(fma.f64 (-.f64 re im) 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (/.f64 (pow.f64 re 2) im) -1/2 (-.f64 re im))
(fma.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 2) (neg.f64 im))
(fma.f64 1 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))
(pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)
(pow.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))) 3)
(pow.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 3) 1/3)
(cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 3))
(neg.f64 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))
(neg.f64 (*.f64 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 1))
(if (!=.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)))) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (neg.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))) (+.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (+.f64 1 (/.f64 (neg.f64 im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im)))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(+.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(+.f64 re (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(+.f64 re (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 1))
(+.f64 re (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im))
(+.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) re)
(+.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im) re)
(+.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 re im))
(+.f64 (-.f64 re im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(+.f64 (neg.f64 im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))
(+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))
(+.f64 (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 1) (neg.f64 im))
(*.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2))
(*.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4))
(*.f64 (/.f64 -1/2 (cbrt.f64 im)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(*.f64 (pow.f64 re 2) (/.f64 -1/2 im))
(*.f64 (*.f64 1/2 (pow.f64 re 2)) (/.f64 -1 im))
(*.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1))
(*.f64 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)
(*.f64 (/.f64 (pow.f64 re 2) im) -1/2)
(/.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2))) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2)))) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 -1/2 (cbrt.f64 im)) (pow.f64 re 2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)
(/.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (pow.f64 re 2) (/.f64 im -1/2))
(/.f64 (neg.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 (*.f64 1/2 (pow.f64 re 2))) im)
(/.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)
(/.f64 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (neg.f64 (cbrt.f64 im)))
(/.f64 (neg.f64 (pow.f64 re 2)) (/.f64 (neg.f64 im) -1/2))
(/.f64 (*.f64 1/2 (pow.f64 re 2)) (neg.f64 im))
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 re 2)) 1) (neg.f64 im))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 2)) -1) (neg.f64 im))
(pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 3) 1/3)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 3))
(neg.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))
(neg.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (neg.f64 im)))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 -1/2 0) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 -1/2) (/.f64 im (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 re 0) (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (*.f64 -1/2 (pow.f64 re 2)) 0) (/.f64 1 (/.f64 im (*.f64 -1/2 (pow.f64 re 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) 2) 0) (/.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) (/.f64 im (pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 re 2))) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
Outputs
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(sqrt.f64 (*.f64 -2 im))
(sqrt.f64 (*.f64 im -2))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im))))
(+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im)))))
(fma.f64 -1/2 (/.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (pow.f64 (/.f64 re (sqrt.f64 (*.f64 im -2))) 2)) (sqrt.f64 (*.f64 im -2))) (+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im)) (pow.f64 re 3)) (*.f64 (sqrt.f64 (*.f64 -2 im)) (pow.f64 (sqrt.f64 (*.f64 -2 im)) 2)))))))
(fma.f64 -1/2 (/.f64 (+.f64 (/.f64 (pow.f64 re 2) im) (pow.f64 (/.f64 re (sqrt.f64 (*.f64 im -2))) 2)) (sqrt.f64 (*.f64 im -2))) (+.f64 (+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2)))) (/.f64 (*.f64 1/2 (*.f64 (+.f64 (pow.f64 im -1) (pow.f64 (sqrt.f64 (*.f64 im -2)) (*.f64 2 -1))) (pow.f64 re 3))) (pow.f64 (sqrt.f64 (*.f64 im -2)) 3))))
(*.f64 re (sqrt.f64 (/.f64 -1 im)))
(*.f64 -1 (*.f64 re (sqrt.f64 (/.f64 -1 im))))
(*.f64 (neg.f64 re) (sqrt.f64 (/.f64 -1 im)))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) re)
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 re -1) -2) im) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 re -1) -2) im) (-.f64 re im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 re -1) -2) im) (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) re)
(fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im) (-.f64 re im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im) (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (/.f64 re im) re)
(/.f64 (pow.f64 re 2) im)
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (/.f64 (pow.f64 re 2) im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (cbrt.f64 (pow.f64 im -1)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (/.f64 re (cbrt.f64 im)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) im))
(/.f64 (pow.f64 re 2) im)
(*.f64 re (/.f64 re im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (pow.f64 re 2) (pow.f64 im -1))
(/.f64 (pow.f64 re 2) im)
(*.f64 (pow.f64 im -1) (pow.f64 re 2))
(/.f64 (pow.f64 re 2) im)
(*.f64 -1 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(*.f64 1 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(*.f64 (neg.f64 (pow.f64 re 2)) (/.f64 -1 im))
(/.f64 (pow.f64 re 2) im)
(-.f64 (/.f64 0 (neg.f64 im)) (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(-.f64 0 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 im -1)) (pow.f64 re 2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 re (/.f64 re (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))) (cbrt.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (cbrt.f64 im))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (/.f64 re (cbrt.f64 im)) re) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (pow.f64 re 2) 2))) (cbrt.f64 (pow.f64 im 2)))
(cbrt.f64 (/.f64 (*.f64 (/.f64 (pow.f64 re 2) im) (pow.f64 (pow.f64 re 2) 2)) (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 im))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(/.f64 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (neg.f64 (cbrt.f64 im)))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) im))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (neg.f64 (cbrt.f64 (pow.f64 re 2)))) (neg.f64 (cbrt.f64 im)))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) im))
(/.f64 (neg.f64 (pow.f64 re 2)) (neg.f64 im))
(/.f64 (pow.f64 re 2) im)
(pow.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) 3)
(/.f64 (pow.f64 re 2) im)
(pow.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) 1/3)
(/.f64 (pow.f64 re 2) im)
(cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3))
(/.f64 (pow.f64 re 2) im)
(neg.f64 (/.f64 (neg.f64 (pow.f64 re 2)) im))
(/.f64 (pow.f64 re 2) im)
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (pow.f64 (/.f64 im (pow.f64 re 2)) -1) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 re 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2))) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (pow.f64 (/.f64 im (pow.f64 re 2)) -1) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1 (/.f64 (neg.f64 im) (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (pow.f64 (/.f64 im (pow.f64 re 2)) -1) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) 2) 0) (/.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (/.f64 (neg.f64 im) (pow.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (/.f64 (neg.f64 im) (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 re (cbrt.f64 re)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 1 0) (/.f64 (pow.f64 re 2) im) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 2)) re))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (*.f64 re (cbrt.f64 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 re (cbrt.f64 (pow.f64 re 2))))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 re) 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(fabs.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3) (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im)))) 2/3))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 1 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(/.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(sqrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 1/2)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2) 1/2)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 2)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 3)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3) 1/3)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))) (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 2)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 2)) (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (-.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (+.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (-.f64 re im))))
(*.f64 (-.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2)) (cbrt.f64 (pow.f64 (-.f64 re im) 2))) (cbrt.f64 (*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (-.f64 im re)))) (+.f64 (cbrt.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2)) (cbrt.f64 (-.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re))))) (+.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))
(*.f64 (-.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2)) (cbrt.f64 (pow.f64 (-.f64 re im) 2))) (cbrt.f64 (*.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (-.f64 im re)))) (+.f64 (cbrt.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2)) (cbrt.f64 (-.f64 re im))))
(*.f64 -1 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 1 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im) (neg.f64 re))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) im)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 (+.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (-.f64 im re))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 im re))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(-.f64 0 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(/.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 1/4)) im) (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4) (-.f64 re im))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (/.f64 -1/2 (cbrt.f64 im)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(fma.f64 -1 (-.f64 im re) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 1 re (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 1 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 1 (-.f64 re im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 re 1 (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 re 1 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1 (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (-.f64 re im) 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 re 2) im) -1/2 (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 2) (neg.f64 im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(fma.f64 1 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 1)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(pow.f64 (cbrt.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))) 3)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(pow.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 3) 1/3)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(cbrt.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) 3))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(neg.f64 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(neg.f64 (*.f64 (-.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 1))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(if (!=.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 0) (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 0) (*.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)))) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)))) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im) (-.f64 im re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (pow.f64 re 2) im) (/.f64 (-.f64 re im) -1/2)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (neg.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (-.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (*.f64 im (+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))) (+.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 2) (pow.f64 re 2)) (-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) re)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (-.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (pow.f64 im 2)) (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 2) (pow.f64 re 2)) (-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) re)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (+.f64 1 (/.f64 (neg.f64 im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 0) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (-.f64 1 (/.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re)))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) re))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (/.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)) re)) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im)))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))))) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re)))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re)))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))) (pow.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 2))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)) (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))) (*.f64 re (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im)))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) im) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 (/.f64 (pow.f64 re 2) (/.f64 im 1/2)) (+.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 -1/8 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2) (*.f64 (-.f64 re im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 im re))))) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im)))
(+.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (neg.f64 (+.f64 im (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 1))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 re (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) re)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) im) re)
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (-.f64 re im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (neg.f64 im) (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) (neg.f64 im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(+.f64 (*.f64 (fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) re) 1) (neg.f64 im))
(fma.f64 (pow.f64 re 2) (/.f64 -1/2 im) (-.f64 re im))
(*.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im))
(*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 1/4)) im))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4))
(*.f64 (/.f64 -1/2 (cbrt.f64 im)) (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (pow.f64 re 2) (/.f64 -1/2 im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (*.f64 1/2 (pow.f64 re 2)) (/.f64 -1 im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 1 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(*.f64 (/.f64 (pow.f64 re 2) im) -1/2)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2))) (cbrt.f64 im))
(cbrt.f64 (/.f64 (*.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2)) im))
(/.f64 (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (cbrt.f64 im))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) -1/2) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 2)) (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2)))) (cbrt.f64 im))
(cbrt.f64 (/.f64 (*.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 (/.f64 (/.f64 (pow.f64 re 2) im) -2) 2)) im))
(/.f64 (*.f64 (/.f64 -1/2 (cbrt.f64 im)) (pow.f64 re 2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (/.f64 im -1/2))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (neg.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 (*.f64 1/2 (pow.f64 re 2))) im)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (*.f64 (neg.f64 (cbrt.f64 (pow.f64 re 2))) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (neg.f64 (cbrt.f64 im)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) -1/2) (cbrt.f64 im))
(/.f64 (neg.f64 (pow.f64 re 2)) (/.f64 (neg.f64 im) -1/2))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (*.f64 1/2 (pow.f64 re 2)) (neg.f64 im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 re 2)) 1) (neg.f64 im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 2)) -1) (neg.f64 im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 1)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)) 3)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(pow.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 3) 1/3)
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) 3))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(neg.f64 (/.f64 (*.f64 1/2 (pow.f64 re 2)) im))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(neg.f64 (/.f64 (*.f64 -1/2 (pow.f64 re 2)) (neg.f64 im)))
(/.f64 (/.f64 (pow.f64 re 2) im) -2)
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (neg.f64 (pow.f64 re 2)) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 -1/2 0) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 -1/2 0) (/.f64 (/.f64 (pow.f64 re 2) im) -2) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 -1/2) (/.f64 im (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 1/4)) 0) (/.f64 (cbrt.f64 -1/2) (/.f64 im (*.f64 (pow.f64 re 2) (cbrt.f64 1/4)))) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 re 0) (/.f64 (*.f64 -1/2 re) (/.f64 im re)) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 re 0) (/.f64 (*.f64 re -1/2) (/.f64 im re)) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 (*.f64 -1/2 (pow.f64 re 2)) 0) (/.f64 1 (/.f64 im (*.f64 -1/2 (pow.f64 re 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (*.f64 (pow.f64 re 2) -1/2) 0) (/.f64 -1 (/.f64 im (*.f64 (pow.f64 re 2) 1/2))) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) 2) 0) (/.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) (/.f64 im (pow.f64 (cbrt.f64 (*.f64 -1/2 (pow.f64 re 2))) 2))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) -1/2)) 2) 0) (/.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) -1/2)) (/.f64 im (pow.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) -1/2)) 2))) (/.f64 (/.f64 (pow.f64 re 2) im) -2))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 re 2))) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (*.f64 -1/2 (pow.f64 re 2)) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)) 0) (/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) -1/2) (/.f64 im (cbrt.f64 (pow.f64 (pow.f64 re 2) 2)))) (/.f64 (/.f64 (pow.f64 re 2) im) -2))

eval505.0ms (0.6%)

Compiler

Compiled 34667 to 20049 computations (42.2% saved)

prune259.0ms (0.3%)

Pruning

12 alts after pruning (8 fresh and 4 done)

PrunedKeptTotal
New8944898
Fresh145
Picked101
Done145
Total89712909
Error
8.3b
Counts
909 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
21.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
16.7b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re))))
54.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
44.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
59.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
49.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 290 to 209 computations (27.9% saved)

localize25.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
0.0b
(/.f64 1 (+.f64 (hypot.f64 re im) re))
0.1b
(/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re)))
0.8b
(+.f64 (hypot.f64 re im) re)
Compiler

Compiled 117 to 54 computations (53.8% saved)

series11.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@0
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
1.0ms
re
@inf
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
1.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
1.0ms
im
@-inf
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
1.0ms
im
@inf
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
Compiler

Compiled 2135 to 865 computations (59.5% saved)

rewrite1.5s (1.9%)

Algorithm
batch-egg-rewrite
Rules
36×egg-rr
Counts
1 → 36
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))))

simplify2.0s (2.6%)

Algorithm
egglog
Counts
60 → 45
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1)
(*.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1)
(/.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 2)
(pow.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 4)
(pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 2)
(pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 3)
(pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 3))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 3))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
Outputs
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (-.f64 (hypot.f64 re im) (*.f64 -1 re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re))))
(fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))) 1/2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 4)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) -1) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 3)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 3))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))) 3))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 2 (/.f64 2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) (/.f64 1 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) 2/3) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3) 0) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) 2/3))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) -1/2)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))

localize7.0ms (0%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize13.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (+.f64 re im)))
Compiler

Compiled 28 to 15 computations (46.4% saved)

series32.0ms (0%)

Counts
1 → 8
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@0
(sqrt.f64 (*.f64 2 (+.f64 re im)))
0.0ms
re
@0
(sqrt.f64 (*.f64 2 (+.f64 re im)))
0.0ms
re
@inf
(sqrt.f64 (*.f64 2 (+.f64 re im)))
0.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (+.f64 re im)))
0.0ms
im
@inf
(sqrt.f64 (*.f64 2 (+.f64 re im)))
Compiler

Compiled 3435 to 2560 computations (25.5% saved)

rewrite1.5s (1.9%)

Algorithm
batch-egg-rewrite
Rules
28×egg-rr
Counts
1 → 28
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (+.f64 re im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))) (*.f64 -1 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (+.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (/.f64 4 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (+.f64 re im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 2 (+.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1)) (sqrt.f64 (*.f64 2 (+.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 2 (+.f64 re im)) 0) (/.f64 1 (pow.f64 (*.f64 2 (+.f64 re im)) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))))))

simplify2.1s (2.6%)

Algorithm
egglog
Counts
36 → 43
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 im))
(+.f64 (sqrt.f64 (*.f64 2 im)) (/.f64 re (sqrt.f64 (*.f64 2 im))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 im))) 2)) (sqrt.f64 (*.f64 2 im))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 im))) 2)) (sqrt.f64 (*.f64 2 im)))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 im))) 2)) (*.f64 (sqrt.f64 (*.f64 2 im)) (pow.f64 (sqrt.f64 (*.f64 2 im)) 2)))))))
(sqrt.f64 (*.f64 2 re))
(+.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) (sqrt.f64 (*.f64 2 re)))
(+.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) (+.f64 (sqrt.f64 (*.f64 2 re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 re))) 2)) (sqrt.f64 (*.f64 2 re))))))
(+.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 re))) 2)) (*.f64 (sqrt.f64 (*.f64 2 re)) (pow.f64 (sqrt.f64 (*.f64 2 re)) 2)))) (+.f64 (sqrt.f64 (*.f64 2 re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 re))) 2)) (sqrt.f64 (*.f64 2 re)))))))
(fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -1))
(*.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))) (*.f64 -1 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(/.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 3)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))) 4)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (/.f64 4 2))
(pow.f64 (*.f64 2 (+.f64 re im)) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 3))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (*.f64 2 (+.f64 re im)) 0) (/.f64 1 (pow.f64 (*.f64 2 (+.f64 re im)) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
Outputs
(sqrt.f64 (*.f64 2 im))
(+.f64 (sqrt.f64 (*.f64 2 im)) (/.f64 re (sqrt.f64 (*.f64 2 im))))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) (sqrt.f64 (*.f64 2 im)))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 im))) 2)) (sqrt.f64 (*.f64 2 im))))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (/.f64 (+.f64 (*.f64 -1/2 (pow.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) 2)) re) (sqrt.f64 (*.f64 2 im))))
(+.f64 (sqrt.f64 (*.f64 2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 im))) 2)) (sqrt.f64 (*.f64 2 im)))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 3) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 im))) 2)) (*.f64 (sqrt.f64 (*.f64 2 im)) (pow.f64 (sqrt.f64 (*.f64 2 im)) 2)))))))
(+.f64 (/.f64 (+.f64 (*.f64 -1/2 (pow.f64 (/.f64 re (sqrt.f64 (*.f64 2 im))) 2)) re) (sqrt.f64 (*.f64 2 im))) (+.f64 (/.f64 (/.f64 (*.f64 (pow.f64 re 3) (pow.f64 (sqrt.f64 (*.f64 2 im)) -4)) (sqrt.f64 (*.f64 2 im))) 2) (sqrt.f64 (*.f64 2 im))))
(sqrt.f64 (*.f64 2 re))
(+.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) (sqrt.f64 (*.f64 2 re)))
(+.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) (+.f64 (sqrt.f64 (*.f64 2 re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 re))) 2)) (sqrt.f64 (*.f64 2 re))))))
(+.f64 (sqrt.f64 (*.f64 2 re)) (/.f64 (+.f64 (*.f64 -1/2 (pow.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) 2)) im) (sqrt.f64 (*.f64 2 re))))
(+.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 re))) 2)) (*.f64 (sqrt.f64 (*.f64 2 re)) (pow.f64 (sqrt.f64 (*.f64 2 re)) 2)))) (+.f64 (sqrt.f64 (*.f64 2 re)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 re))) 2)) (sqrt.f64 (*.f64 2 re)))))))
(+.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im 3) (pow.f64 (sqrt.f64 (*.f64 2 re)) -4)) (sqrt.f64 (*.f64 2 re))) 1/2 (sqrt.f64 (*.f64 2 re))) (/.f64 (+.f64 (*.f64 -1/2 (pow.f64 (/.f64 im (sqrt.f64 (*.f64 2 re))) 2)) im) (sqrt.f64 (*.f64 2 re))))
(fabs.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3)))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -1))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))) (*.f64 -1 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 1 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 2)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 3) 1/3)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 3)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))))) 4)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) (/.f64 4 2))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (*.f64 2 (+.f64 re im)) 1/2)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) 1/2)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 1)
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 3))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 2 (+.f64 re im)))))
(sqrt.f64 (*.f64 2 (+.f64 re im)))
(if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1) -1) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (*.f64 2 (+.f64 re im)) 0) (/.f64 1 (pow.f64 (*.f64 2 (+.f64 re im)) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) 2) -1/2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) -2)) (sqrt.f64 (*.f64 2 (+.f64 re im))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (+.f64 re im)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 re im))) -1) -1) (sqrt.f64 (*.f64 2 (+.f64 re im))))

localize38.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (*.f64 (/.f64 re im) re))
0.0b
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))
0.1b
(*.f64 (/.f64 re im) re)
7.2b
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
Compiler

Compiled 79 to 32 computations (59.5% saved)

series63.0ms (0.1%)

Counts
4 → 78
Calls

24 calls:

TimeVariablePointExpression
0.0ms
im
@-inf
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
0.0ms
re
@0
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
0.0ms
re
@inf
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
0.0ms
im
@0
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
0.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
Compiler

Compiled 7050 to 5215 computations (26% saved)

rewrite1.5s (2%)

Algorithm
batch-egg-rewrite
Rules
90×egg-rr
49×egg-rr
44×egg-rr
17×egg-rr
Counts
4 → 200
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))))
(*.f64 (/.f64 re im) re)
(+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im))
(*.f64 -1/2 (*.f64 (/.f64 re im) re))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3) (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (/.f64 (pow.f64 re 2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 re im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 re (cbrt.f64 re)) im) (cbrt.f64 (pow.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re (cbrt.f64 im)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 re) (/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 re (cbrt.f64 (/.f64 re im))) (cbrt.f64 (pow.f64 (/.f64 re im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 re 2)) (/.f64 -1 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 re 2) (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re 2) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 re (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re (cbrt.f64 im)) re) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 re (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (pow.f64 re 2))) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (cbrt.f64 re)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re)) (neg.f64 (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 re 2)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 re 2)) 1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 re 2) -1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 re 2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 re 2) (neg.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 re (/.f64 (neg.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 (neg.f64 re) im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 re) 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 re (cbrt.f64 re)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 2)) re))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 re 2) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 re 2)) 2) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (pow.f64 (cbrt.f64 (pow.f64 re 2)) 2))) (/.f64 (pow.f64 re 2) im))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))) (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 2)) (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (-.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (+.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (-.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (+.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) im)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (-.f64 im re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im) (neg.f64 re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 re im) (*.f64 re -1/2) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (*.f64 -1/2 re) im) (cbrt.f64 re)) (cbrt.f64 (pow.f64 re 2)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 re) (/.f64 re im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re (/.f64 (*.f64 -1/2 re) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (-.f64 im re) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 re im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 re 2) im) -1/2 (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1 (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 re im) 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) 2) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re)))) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (pow.f64 im 2)) (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (+.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (pow.f64 im 2)) (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (+.f64 1 (/.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im)))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 re im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 1) (neg.f64 im))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re im) (*.f64 re -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 re) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 -1/2 re) im) (cbrt.f64 re)) (cbrt.f64 (pow.f64 re 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -1/2 re) im) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (/.f64 (*.f64 -1/2 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (/.f64 (pow.f64 re 2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 re 2) im) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (pow.f64 re 2)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (pow.f64 re 2) -1/2) 1) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 re) re) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (cbrt.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 re -1/2)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re (cbrt.f64 im)) (*.f64 re -1/2)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 (pow.f64 re 2) -1/2)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1 (*.f64 -1/2 (pow.f64 re 2))) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 -1/2 re)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 re) (/.f64 re (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re 2) (/.f64 im -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 re 2)) -1/2) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 (neg.f64 re)) re) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 re) (*.f64 re -1/2)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (neg.f64 (pow.f64 re 2))) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (*.f64 -1/2 (neg.f64 re))) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -1/2 re) (neg.f64 re)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 re 2) -1/2)) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -1/2 (pow.f64 re 2))) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 -1/2 re) (/.f64 (neg.f64 re) im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 (neg.f64 re) im) (*.f64 re -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1/2 0) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))))

simplify4.9s (6.3%)

Algorithm
egglog
Counts
278 → 284
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -2 im))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im)) (pow.f64 re 3)) (*.f64 (sqrt.f64 (*.f64 -2 im)) (pow.f64 (sqrt.f64 (*.f64 -2 im)) 2)))))))
(*.f64 re (sqrt.f64 (/.f64 -1 im)))
(*.f64 -1 (*.f64 re (sqrt.f64 (/.f64 -1 im))))
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1 im)
(+.f64 re (*.f64 -1 im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(fabs.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(*.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3) (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))
(*.f64 1 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(*.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(/.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))
(sqrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2))
(pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(pow.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 2)
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 3)
(cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (/.f64 (pow.f64 re 2) im)))
(*.f64 (cbrt.f64 (/.f64 re im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re))
(*.f64 (/.f64 (*.f64 re (cbrt.f64 re)) im) (cbrt.f64 (pow.f64 re 2)))
(*.f64 (/.f64 re im) re)
(*.f64 re (/.f64 re im))
(*.f64 (/.f64 re (cbrt.f64 im)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))
(*.f64 (cbrt.f64 re) (/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) im))
(*.f64 (*.f64 re (cbrt.f64 (/.f64 re im))) (cbrt.f64 (pow.f64 (/.f64 re im) 2)))
(*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(*.f64 (neg.f64 (pow.f64 re 2)) (/.f64 -1 im))
(*.f64 (pow.f64 re 2) (pow.f64 im -1))
(*.f64 1 (/.f64 (pow.f64 re 2) im))
(*.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(/.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re)) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (cbrt.f64 im))
(/.f64 (*.f64 re (/.f64 re (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 re (cbrt.f64 im)) re) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 im))
(/.f64 (*.f64 re (/.f64 re (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (neg.f64 (neg.f64 (pow.f64 re 2))) im)
(/.f64 (neg.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (*.f64 (neg.f64 (cbrt.f64 re)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re)) (neg.f64 (cbrt.f64 im)))
(/.f64 (neg.f64 (pow.f64 re 2)) (neg.f64 im))
(/.f64 (*.f64 (neg.f64 (pow.f64 re 2)) 1) (neg.f64 im))
(/.f64 (*.f64 (pow.f64 re 2) -1) (neg.f64 im))
(pow.f64 (/.f64 (pow.f64 re 2) im) 1)
(pow.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) 3)
(cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3))
(neg.f64 (/.f64 (pow.f64 re 2) (neg.f64 im)))
(neg.f64 (*.f64 re (/.f64 (neg.f64 re) im)))
(neg.f64 (*.f64 (/.f64 (neg.f64 re) im) re))
(if (!=.f64 re 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 re) 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 re (cbrt.f64 re)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 2)) re))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 re 2)) 2) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (pow.f64 (cbrt.f64 (pow.f64 re 2)) 2))) (/.f64 (pow.f64 re 2) im))
(*.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))) (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 2)) (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (-.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (+.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (-.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (+.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(*.f64 -1 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))
(*.f64 1 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)
(-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im)
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 im re))
(-.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(-.f64 (+.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) im)
(-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (-.f64 im re))
(-.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im) (neg.f64 re))
(-.f64 0 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))
(/.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)
(fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))
(fma.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (-.f64 re im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2) (-.f64 re im))
(fma.f64 (/.f64 re im) (*.f64 re -1/2) (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 re im))
(fma.f64 (*.f64 (/.f64 (*.f64 -1/2 re) im) (cbrt.f64 re)) (cbrt.f64 (pow.f64 re 2)) (-.f64 re im))
(fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (-.f64 re im))
(fma.f64 (*.f64 -1/2 re) (/.f64 re im) (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4) (-.f64 re im))
(fma.f64 re (/.f64 (*.f64 -1/2 re) im) (-.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 -1 (-.f64 im re) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (-.f64 re im))
(fma.f64 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))
(fma.f64 1 (-.f64 re im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 1 re (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 1 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (/.f64 (pow.f64 re 2) im) -1/2 (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1 (-.f64 re im))
(fma.f64 re 1 (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (-.f64 re im) 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 re 1 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re (neg.f64 im))
(fma.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) 2) (neg.f64 im))
(fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) (neg.f64 im))
(fma.f64 1 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))
(pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)
(pow.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))) 3)
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 3))
(neg.f64 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))
(neg.f64 (*.f64 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) 1))
(if (!=.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re)))) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (pow.f64 im 2)) (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (+.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (pow.f64 im 2)) (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (+.f64 1 (/.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im)))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(+.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))
(+.f64 (-.f64 re im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(+.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(+.f64 re (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(+.f64 re (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 1))
(+.f64 re (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im))
(+.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) re)
(+.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im) re)
(+.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re))
(+.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))
(+.f64 (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 1) (neg.f64 im))
(*.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2))
(*.f64 (/.f64 re im) (*.f64 re -1/2))
(*.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4))
(*.f64 (*.f64 -1/2 re) (/.f64 re im))
(*.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(*.f64 (*.f64 (/.f64 (*.f64 -1/2 re) im) (cbrt.f64 re)) (cbrt.f64 (pow.f64 re 2)))
(*.f64 (/.f64 (*.f64 -1/2 re) im) re)
(*.f64 re (/.f64 (*.f64 -1/2 re) im))
(*.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 im -1))
(*.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(*.f64 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(*.f64 (/.f64 (pow.f64 re 2) im) -1/2)
(*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)
(/.f64 (*.f64 (pow.f64 re 2) -1/2) im)
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)
(/.f64 (*.f64 (*.f64 (pow.f64 re 2) -1/2) 1) im)
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) im)
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (*.f64 -1/2 re) re) im)
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (cbrt.f64 im))
(/.f64 (*.f64 re (*.f64 re -1/2)) im)
(/.f64 (*.f64 (/.f64 re (cbrt.f64 im)) (*.f64 re -1/2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 1 (*.f64 (pow.f64 re 2) -1/2)) im)
(/.f64 (*.f64 1 (*.f64 -1/2 (pow.f64 re 2))) im)
(/.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 re (*.f64 -1/2 re)) im)
(/.f64 (*.f64 (*.f64 -1/2 re) (/.f64 re (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (/.f64 im -1/2))
(/.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)
(/.f64 (*.f64 (neg.f64 (pow.f64 re 2)) -1/2) (neg.f64 im))
(/.f64 (*.f64 (*.f64 -1/2 (neg.f64 re)) re) (neg.f64 im))
(/.f64 (*.f64 (neg.f64 re) (*.f64 re -1/2)) (neg.f64 im))
(/.f64 (*.f64 -1/2 (neg.f64 (pow.f64 re 2))) (neg.f64 im))
(/.f64 (*.f64 re (*.f64 -1/2 (neg.f64 re))) (neg.f64 im))
(/.f64 (*.f64 (*.f64 -1/2 re) (neg.f64 re)) (neg.f64 im))
(/.f64 (neg.f64 (*.f64 (pow.f64 re 2) -1/2)) (neg.f64 im))
(/.f64 (neg.f64 (*.f64 -1/2 (pow.f64 re 2))) (neg.f64 im))
(pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)
(pow.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 3))
(neg.f64 (*.f64 (*.f64 -1/2 re) (/.f64 (neg.f64 re) im)))
(neg.f64 (*.f64 (/.f64 (neg.f64 re) im) (*.f64 re -1/2)))
(if (!=.f64 -1/2 0) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
Outputs
(sqrt.f64 (*.f64 -2 im))
(sqrt.f64 (*.f64 im -2))
(+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im))))
(+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (/.f64 re (sqrt.f64 (*.f64 -2 im)))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 re (sqrt.f64 (*.f64 im -2))) 2) (/.f64 (pow.f64 re 2) im)) (sqrt.f64 (*.f64 im -2))) (+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 re 2) (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im))) (sqrt.f64 (*.f64 -2 im)))) (+.f64 (sqrt.f64 (*.f64 -2 im)) (+.f64 (/.f64 re (sqrt.f64 (*.f64 -2 im))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 -2 im))) 2) (/.f64 1 im)) (pow.f64 re 3)) (*.f64 (sqrt.f64 (*.f64 -2 im)) (pow.f64 (sqrt.f64 (*.f64 -2 im)) 2)))))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 re (sqrt.f64 (*.f64 im -2))) 2) (/.f64 (pow.f64 re 2) im)) (sqrt.f64 (*.f64 im -2))) (+.f64 (+.f64 (sqrt.f64 (*.f64 im -2)) (/.f64 re (sqrt.f64 (*.f64 im -2)))) (/.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 im -2)) (*.f64 2 -1)) (pow.f64 im -1)) (pow.f64 re 3)) (pow.f64 (sqrt.f64 (*.f64 im -2)) 3)) 2)))
(*.f64 re (sqrt.f64 (/.f64 -1 im)))
(*.f64 -1 (*.f64 re (sqrt.f64 (/.f64 -1 im))))
(*.f64 (neg.f64 re) (sqrt.f64 (/.f64 -1 im)))
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 1 re) -2) im)
(/.f64 (pow.f64 (pow.f64 re -1) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 (/.f64 -1 re) -2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) re)
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 re -1) -2) im) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 re -1) -2) im) (-.f64 re im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (pow.f64 re -1) -2) im) (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) re)
(fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im) re)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im) (-.f64 re im))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im)) (+.f64 re (*.f64 -1 im)))
(fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im) (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(+.f64 re (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re re)
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1 im) (*.f64 -1/2 (/.f64 (pow.f64 re 2) im))))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 -1 im)
(neg.f64 im)
(+.f64 re (*.f64 -1 im))
(-.f64 re im)
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) im)) (*.f64 -1 im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 re -1) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 re) -2) im))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 re) -2)) im)
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(fabs.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2/3) (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))) (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im)))) 2/3))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 1 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(/.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(sqrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 1)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)) 1/2)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 2) 1/2)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (sqrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 2)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3) 1/3)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im)))) 3)
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (neg.f64 (pow.f64 re 2)) im))) 3))
(sqrt.f64 (fma.f64 2 (-.f64 re im) (/.f64 (pow.f64 re 2) (neg.f64 im))))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (/.f64 (pow.f64 re 2) im)))
(/.f64 (pow.f64 re 2) im)
(*.f64 (cbrt.f64 (/.f64 re im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re))
(*.f64 (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (pow.f64 (/.f64 re im) 2))) re)
(*.f64 (/.f64 (*.f64 re (cbrt.f64 re)) im) (cbrt.f64 (pow.f64 re 2)))
(*.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (*.f64 (cbrt.f64 re) re) im))
(*.f64 (/.f64 re im) re)
(/.f64 (pow.f64 re 2) im)
(*.f64 re (/.f64 re im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 re (cbrt.f64 im)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (cbrt.f64 re) (/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) im))
(/.f64 (*.f64 (cbrt.f64 re) (*.f64 re (cbrt.f64 (pow.f64 re 2)))) im)
(*.f64 (*.f64 re (cbrt.f64 (/.f64 re im))) (cbrt.f64 (pow.f64 (/.f64 re im) 2)))
(*.f64 re (*.f64 (cbrt.f64 (/.f64 re im)) (cbrt.f64 (pow.f64 (/.f64 re im) 2))))
(*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(*.f64 (neg.f64 (pow.f64 re 2)) (/.f64 -1 im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (pow.f64 re 2) (pow.f64 im -1))
(/.f64 (pow.f64 re 2) im)
(*.f64 1 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) im)
(*.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 re) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re)) (cbrt.f64 im))
(/.f64 (*.f64 (cbrt.f64 re) (*.f64 re (cbrt.f64 (pow.f64 (/.f64 re im) 2)))) (cbrt.f64 im))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) (cbrt.f64 im))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) im))
(/.f64 (*.f64 re (/.f64 re (cbrt.f64 (pow.f64 im 2)))) (cbrt.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (/.f64 re (cbrt.f64 im)) re) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (cbrt.f64 (pow.f64 re 2))) (cbrt.f64 im))
(cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) im))
(/.f64 (*.f64 re (/.f64 re (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) 1) (*.f64 (cbrt.f64 (pow.f64 im 2)) 1))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 re 2))) im)
(/.f64 (pow.f64 re 2) im)
(/.f64 (neg.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (pow.f64 re 2) (*.f64 (cbrt.f64 im) (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(/.f64 (*.f64 (neg.f64 (cbrt.f64 re)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 re im) 2)) re)) (neg.f64 (cbrt.f64 im)))
(/.f64 (*.f64 (cbrt.f64 re) (*.f64 re (cbrt.f64 (pow.f64 (/.f64 re im) 2)))) (cbrt.f64 im))
(/.f64 (neg.f64 (pow.f64 re 2)) (neg.f64 im))
(/.f64 (pow.f64 re 2) im)
(/.f64 (*.f64 (neg.f64 (pow.f64 re 2)) 1) (neg.f64 im))
(/.f64 (pow.f64 re 2) im)
(/.f64 (*.f64 (pow.f64 re 2) -1) (neg.f64 im))
(/.f64 (pow.f64 re 2) im)
(pow.f64 (/.f64 (pow.f64 re 2) im) 1)
(/.f64 (pow.f64 re 2) im)
(pow.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) 1/3)
(/.f64 (pow.f64 re 2) im)
(pow.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) 3)
(/.f64 (pow.f64 re 2) im)
(cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3))
(/.f64 (pow.f64 re 2) im)
(neg.f64 (/.f64 (pow.f64 re 2) (neg.f64 im)))
(/.f64 (pow.f64 re 2) im)
(neg.f64 (*.f64 re (/.f64 (neg.f64 re) im)))
(/.f64 (pow.f64 re 2) im)
(neg.f64 (*.f64 (/.f64 (neg.f64 re) im) re))
(/.f64 (pow.f64 re 2) im)
(if (!=.f64 re 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (neg.f64 re) 0) (/.f64 re (/.f64 im re)) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 re (cbrt.f64 re)) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 (cbrt.f64 re) re) (/.f64 im (cbrt.f64 (pow.f64 re 2)))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) re) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 (cbrt.f64 (pow.f64 re 2)) re))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (*.f64 re (cbrt.f64 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 re) (/.f64 im (*.f64 re (cbrt.f64 (pow.f64 re 2))))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 1 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 re 2) 0) (pow.f64 (/.f64 im (pow.f64 re 2)) -1) (/.f64 (pow.f64 re 2) im))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 re 2)) 2) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 im (pow.f64 (cbrt.f64 (pow.f64 re 2)) 2))) (/.f64 (pow.f64 re 2) im))
(*.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))) (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 2)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 2)) (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (-.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (+.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (-.f64 re im))))
(*.f64 (-.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2))) (cbrt.f64 (*.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))) (+.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2))) (cbrt.f64 (-.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))))) (+.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(*.f64 (-.f64 (+.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2))) (cbrt.f64 (*.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))) (+.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2))) (cbrt.f64 (-.f64 re im))))
(*.f64 -1 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 1 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 im re))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 (+.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) im)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (-.f64 im re))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im) (neg.f64 re))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(-.f64 0 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(/.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (cbrt.f64 (-.f64 re im)) (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(fma.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (/.f64 re im) (*.f64 re -1/2) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (*.f64 (/.f64 (*.f64 -1/2 re) im) (cbrt.f64 re)) (cbrt.f64 (pow.f64 re 2)) (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (*.f64 re -1/2) (cbrt.f64 re)) im) (cbrt.f64 (pow.f64 re 2)) (-.f64 re im))
(fma.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im) (-.f64 re im))
(fma.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (*.f64 -1/2 re) (/.f64 re im) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4) (-.f64 re im))
(fma.f64 re (/.f64 (*.f64 -1/2 re) im) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 re im) 2)) (cbrt.f64 (-.f64 re im)) (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)))
(fma.f64 -1 (-.f64 im re) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 1 (-.f64 re im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 1 re (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 1 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (/.f64 (pow.f64 re 2) im) -1/2 (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1 (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 re 1 (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (-.f64 re im) 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 re 1 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re (neg.f64 im))
(-.f64 (*.f64 (fma.f64 -1/2 (/.f64 re im) 1) re) im)
(fma.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) 2) (neg.f64 im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(fma.f64 re (fma.f64 -1/2 (/.f64 re im) 1) (neg.f64 im))
(-.f64 (*.f64 re (fma.f64 -1/2 (/.f64 re im) 1)) im)
(fma.f64 1 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 1)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(pow.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 3) 1/3)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im))) 3)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)) 3))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(neg.f64 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(neg.f64 (*.f64 (-.f64 im (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)) 1))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(if (!=.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 0) (*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 0) (*.f64 (fma.f64 -2 (/.f64 (-.f64 re im) (/.f64 (pow.f64 re 2) im)) 1) (/.f64 (pow.f64 re 2) (*.f64 im -2))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re)))) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re)))) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 re im) 0) (*.f64 (-.f64 re im) (+.f64 1 (/.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) (-.f64 re im)))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (pow.f64 im 2)) (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2) (pow.f64 im 2)) (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) (-.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (pow.f64 (-.f64 re im) 2)) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 im 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2) (*.f64 im (fma.f64 (fma.f64 -1/2 (/.f64 re im) 1) re im)))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re))) (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (+.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (+.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 2)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (pow.f64 im 2)) (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2) (pow.f64 im 2)) (+.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (-.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 2)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 0) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (+.f64 1 (/.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re)))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 0) (*.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) (-.f64 1 (/.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re)))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) re))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (/.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)) re)) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im)))) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (+.f64 (*.f64 im (+.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re))) (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2)) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re))) (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re)))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re)))) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 3) (pow.f64 im 3)) (+.f64 (pow.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 2) (-.f64 (pow.f64 im 2) (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (neg.f64 im) 0) (/.f64 (-.f64 (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 3) (pow.f64 im 3)) (+.f64 (*.f64 im (+.f64 im (fma.f64 (/.f64 re (*.f64 im -2)) re re))) (pow.f64 (fma.f64 (/.f64 re (*.f64 im -2)) re re) 2))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 0) (/.f64 (+.f64 (pow.f64 re 3) (pow.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (-.f64 (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)) (+.f64 (pow.f64 re 2) (+.f64 (*.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))) (*.f64 re (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 re 0) (/.f64 (-.f64 (pow.f64 re 3) (pow.f64 (+.f64 im (/.f64 (*.f64 re (*.f64 re 1/2)) im)) 3)) (-.f64 (pow.f64 re 2) (*.f64 (fma.f64 -1/2 (/.f64 (pow.f64 re 2) im) (neg.f64 im)) (+.f64 im (+.f64 (/.f64 (*.f64 re (*.f64 re 1/2)) im) re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 im re))))) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re (-.f64 re im)))
(if (!=.f64 (-.f64 im re) 0) (/.f64 (fma.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 3) -1/8 (pow.f64 (-.f64 re im) 3)) (-.f64 (pow.f64 (/.f64 (pow.f64 re 2) (*.f64 im -2)) 2) (*.f64 (-.f64 re im) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 im re))))) (fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im)))
(+.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (-.f64 re im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 (-.f64 re im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (neg.f64 (-.f64 im (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (*.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 1))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 re (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 (+.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) re)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) im) re)
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) (neg.f64 im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(+.f64 (*.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) 1) (neg.f64 im))
(fma.f64 (/.f64 re (*.f64 im -2)) re (-.f64 re im))
(*.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 2)) (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (cbrt.f64 -1/2) (/.f64 (*.f64 (cbrt.f64 1/4) (pow.f64 re 2)) im))
(*.f64 (cbrt.f64 (/.f64 (pow.f64 re 2) im)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (/.f64 re im) (*.f64 re -1/2))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (/.f64 (*.f64 (pow.f64 re 2) (cbrt.f64 -1/2)) im) (cbrt.f64 1/4))
(*.f64 (*.f64 -1/2 re) (/.f64 re im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (*.f64 -1/2 (cbrt.f64 (/.f64 (pow.f64 re 2) im))) (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (*.f64 (/.f64 (*.f64 -1/2 re) im) (cbrt.f64 re)) (cbrt.f64 (pow.f64 re 2)))
(*.f64 (/.f64 re (*.f64 im -2)) (*.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2))))
(*.f64 (/.f64 (*.f64 -1/2 re) im) re)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 re (/.f64 (*.f64 -1/2 re) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (*.f64 (pow.f64 re 2) -1/2) (pow.f64 im -1))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (*.f64 -1/2 (pow.f64 re 2)) (pow.f64 im -1))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 -1/2 (/.f64 (pow.f64 re 2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 1 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (/.f64 (pow.f64 re 2) im) -1/2)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(*.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (pow.f64 re 2) -1/2) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (*.f64 (pow.f64 re 2) -1/2) 1) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (*.f64 -1/2 (pow.f64 re 2)) 1) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (/.f64 (pow.f64 re 2) (cbrt.f64 im)) -1/2) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 im 2)) (cbrt.f64 im)))
(/.f64 (*.f64 (*.f64 -1/2 re) re) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 (/.f64 (pow.f64 re 2) im) 2)) -1/2)) (cbrt.f64 im))
(/.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 (pow.f64 re 2) im) 2))) -1/2) (cbrt.f64 im))
(/.f64 (*.f64 re (*.f64 re -1/2)) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (/.f64 re (cbrt.f64 im)) (*.f64 re -1/2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 im 2)) (cbrt.f64 im)))
(/.f64 (*.f64 1 (*.f64 (pow.f64 re 2) -1/2)) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 1 (*.f64 -1/2 (pow.f64 re 2))) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 -1/2 (/.f64 (pow.f64 re 2) (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 im 2)) (cbrt.f64 im)))
(/.f64 (*.f64 re (*.f64 -1/2 re)) im)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (*.f64 -1/2 re) (/.f64 re (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -1/2 (pow.f64 re 2)) (*.f64 (cbrt.f64 (pow.f64 im 2)) (cbrt.f64 im)))
(/.f64 (pow.f64 re 2) (/.f64 im -1/2))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (neg.f64 (pow.f64 re 2)) -1/2) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (*.f64 -1/2 (neg.f64 re)) re) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (neg.f64 re) (*.f64 re -1/2)) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 -1/2 (neg.f64 (pow.f64 re 2))) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 re (*.f64 -1/2 (neg.f64 re))) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (*.f64 (*.f64 -1/2 re) (neg.f64 re)) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (neg.f64 (*.f64 (pow.f64 re 2) -1/2)) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(/.f64 (neg.f64 (*.f64 -1/2 (pow.f64 re 2))) (neg.f64 im))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 1)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(pow.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 3) 1/3)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(pow.f64 (cbrt.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im)) 3)
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(cbrt.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) 3))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(neg.f64 (*.f64 (*.f64 -1/2 re) (/.f64 (neg.f64 re) im)))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(neg.f64 (*.f64 (/.f64 (neg.f64 re) im) (*.f64 re -1/2)))
(/.f64 (pow.f64 re 2) (*.f64 im -2))
(if (!=.f64 -1/2 0) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(if (!=.f64 -1/2 0) (/.f64 (pow.f64 re 2) (*.f64 im -2)) (/.f64 (pow.f64 re 2) (*.f64 im -2)))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (*.f64 (pow.f64 re 2) -1/2) im))
(if (!=.f64 (pow.f64 re 2) 0) (/.f64 -1/2 (/.f64 im (pow.f64 re 2))) (/.f64 (pow.f64 re 2) (*.f64 im -2)))

localize19.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (hypot.f64 re im))
0.0b
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)))
16.5b
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
Compiler

Compiled 63 to 17 computations (73% saved)

series207.0ms (0.3%)

Counts
3 → 26
Calls

18 calls:

TimeVariablePointExpression
2.0ms
im
@0
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)))
2.0ms
im
@0
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
1.0ms
im
@inf
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)))
1.0ms
im
@inf
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
1.0ms
re
@0
(sqrt.f64 (hypot.f64 re im))
Compiler

Compiled 18675 to 15350 computations (17.8% saved)

rewrite1.5s (1.9%)

Algorithm
batch-egg-rewrite
Rules
42×egg-rr
28×egg-rr
28×egg-rr
Counts
3 → 98
Calls
Call 1
Inputs
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)))
(sqrt.f64 (hypot.f64 re im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 3/4) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 re im) 2/3) (cbrt.f64 (hypot.f64 re im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (hypot.f64 re im))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 re im) 1 re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (+.f64 (hypot.f64 re im) re)) (*.f64 1/2 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cbrt.f64 re) (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re))))) (*.f64 (cbrt.f64 (hypot.f64 re im)) (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im)))))) (*.f64 (cbrt.f64 re) (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 1/2) (*.f64 (+.f64 (hypot.f64 re im) re) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (cbrt.f64 re)) (*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (cbrt.f64 (hypot.f64 re im))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (cbrt.f64 re)))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (cbrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (fabs.f64 (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 re im) 1/8) (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)) (pow.f64 (hypot.f64 re im) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (hypot.f64 re im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (hypot.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 re im) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 re im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (/.f64 1 (pow.f64 (hypot.f64 re im) -1/2)) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -2)) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1)) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (hypot.f64 re im))) (*.f64 1/2 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) 1/2) (*.f64 (sqrt.f64 (hypot.f64 re im)) 1/2))))))

simplify4.0s (5.1%)

Algorithm
egglog
Counts
124 → 159
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)
(+.f64 re (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 re (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (pow.f64 re 4)) (+.f64 re (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
re
re
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) re))
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (pow.f64 im 4)) re)))
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (pow.f64 im 4)) (+.f64 re (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (pow.f64 im 6))))))
(sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) 2))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))) 2)) (/.f64 1 (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))) 2)))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) 2))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))))
(sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2)))))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))) 2))))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))))
(sqrt.f64 (sqrt.f64 (pow.f64 im 2)))
(+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (*.f64 1/4 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))
(+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (pow.f64 re 4)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))
(+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (pow.f64 re 6)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (pow.f64 re 4)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))))))
(sqrt.f64 (sqrt.f64 (pow.f64 re 2)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (pow.f64 im 6)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(/.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) -1)
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 3/4) re)
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (pow.f64 (hypot.f64 re im) 2/3) (cbrt.f64 (hypot.f64 re im)) re)
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)
(fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (hypot.f64 re im))) re)
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(fma.f64 1 re (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(fma.f64 re 1 (hypot.f64 re im))
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))
(neg.f64 (*.f64 -1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 (*.f64 1/2 (+.f64 (hypot.f64 re im) re)) (*.f64 1/2 (+.f64 (hypot.f64 re im) re)))
(+.f64 (*.f64 (cbrt.f64 re) (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re))))) (*.f64 (cbrt.f64 (hypot.f64 re im)) (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re))))))
(+.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im)))))) (*.f64 (cbrt.f64 re) (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im)))))))
(+.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 1/2) (*.f64 (+.f64 (hypot.f64 re im) re) 1/2))
(+.f64 (*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (cbrt.f64 re)) (*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (cbrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (cbrt.f64 (hypot.f64 re im))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (cbrt.f64 re)))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1)
(/.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 4)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))
(fabs.f64 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (fabs.f64 (cbrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (fabs.f64 (cbrt.f64 (hypot.f64 re im))))
(*.f64 (pow.f64 (hypot.f64 re im) 1/8) (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)) (pow.f64 (hypot.f64 re im) 1/8))
(*.f64 1 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(/.f64 (neg.f64 (sqrt.f64 (hypot.f64 re im))) -1)
(/.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) 3)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 2/3)
(pow.f64 (hypot.f64 re im) 1/2)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 2)
(pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 4)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(neg.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) -1))
(neg.f64 (*.f64 -1 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 1 (pow.f64 (hypot.f64 re im) -1/2)) (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -2)) (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1)) (sqrt.f64 (hypot.f64 re im)))
(+.f64 (*.f64 1/2 (sqrt.f64 (hypot.f64 re im))) (*.f64 1/2 (sqrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) 1/2) (*.f64 (sqrt.f64 (hypot.f64 re im)) 1/2))
Outputs
(pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)
(fabs.f64 im)
(+.f64 re (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))
(+.f64 re (fabs.f64 im))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 re (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))
(fma.f64 1/2 (/.f64 (*.f64 re re) (fabs.f64 im)) (+.f64 re (fabs.f64 im)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 re 2) (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (pow.f64 re 4)) (+.f64 re (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
(fma.f64 1/2 (/.f64 (*.f64 re re) (fabs.f64 im)) (fma.f64 (-.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2) (fabs.f64 im)) (/.f64 1/16 (pow.f64 (fabs.f64 im) 3))) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) 2)) (pow.f64 re 4) (+.f64 re (fabs.f64 im))))
re
re
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)
(+.f64 (fabs.f64 re) re)
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) re))
(+.f64 (fabs.f64 re) (fma.f64 1/2 (/.f64 (*.f64 im im) (fabs.f64 re)) re))
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (pow.f64 im 4)) re)))
(+.f64 (fabs.f64 re) (fma.f64 1/2 (/.f64 (*.f64 im im) (fabs.f64 re)) (fma.f64 (+.f64 (/.f64 1/16 (pow.f64 (fabs.f64 re) 3)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (pow.f64 im 4) re)))
(+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (sqrt.f64 (pow.f64 re 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (pow.f64 im 4)) (+.f64 re (*.f64 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (pow.f64 im 6))))))
(+.f64 (fabs.f64 re) (fma.f64 1/2 (/.f64 (*.f64 im im) (fabs.f64 re)) (+.f64 (fma.f64 (+.f64 (/.f64 1/16 (pow.f64 (fabs.f64 re) 3)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (pow.f64 im 4) re) (*.f64 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (pow.f64 (fabs.f64 re) 3)) 0) (pow.f64 im 6)))))
(sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))
(sqrt.f64 (*.f64 (fabs.f64 im) 2))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (sqrt.f64 (*.f64 (fabs.f64 im) 2)))
(+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) 2))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))))
(+.f64 (/.f64 (+.f64 re (*.f64 1/2 (*.f64 (*.f64 re re) (-.f64 (/.f64 1 (fabs.f64 im)) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2))))) (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (sqrt.f64 (*.f64 (fabs.f64 im) 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))) 2)) (/.f64 1 (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))) 2)))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (+.f64 (/.f64 re (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2)))) 2))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2) (/.f64 1 (fabs.f64 im))) (*.f64 (fabs.f64 im) 2)) (pow.f64 re 3))) re) (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 re re) (-.f64 (/.f64 1 (fabs.f64 im)) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fabs.f64 im) 2))) 2))) (sqrt.f64 (*.f64 (fabs.f64 im) 2))) (sqrt.f64 (*.f64 (fabs.f64 im) 2))))
(sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))
(sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))
(+.f64 (*.f64 1/2 (+.f64 (/.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (/.f64 (*.f64 (fma.f64 2 (+.f64 (/.f64 1/16 (pow.f64 (fabs.f64 re) 3)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (neg.f64 (pow.f64 (/.f64 (/.f64 1/2 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) 2))) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2)))))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))) 2))))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (-.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (pow.f64 (/.f64 1/2 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))) (sqrt.f64 (*.f64 2 (+.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) re))))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (fma.f64 2 (+.f64 (/.f64 (*.f64 1/4 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (pow.f64 (fabs.f64 re) 3)) 0) (/.f64 (*.f64 -1/2 (fma.f64 2 (+.f64 (/.f64 1/16 (pow.f64 (fabs.f64 re) 3)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (neg.f64 (pow.f64 (/.f64 (/.f64 1/2 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) 2)))) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))) 2)))) (pow.f64 im 6))) (*.f64 1/2 (*.f64 (fma.f64 2 (+.f64 (/.f64 1/16 (pow.f64 (fabs.f64 re) 3)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (neg.f64 (pow.f64 (/.f64 (/.f64 1/2 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) 2))) (pow.f64 im 4)))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 im im) (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))))
(sqrt.f64 (sqrt.f64 (pow.f64 im 2)))
(sqrt.f64 (fabs.f64 im))
(+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (*.f64 1/4 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))
(+.f64 (sqrt.f64 (fabs.f64 im)) (/.f64 (*.f64 1/4 (*.f64 re re)) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)))
(+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (pow.f64 re 4)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))
(+.f64 (sqrt.f64 (fabs.f64 im)) (fma.f64 1/4 (/.f64 (*.f64 re re) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) (/.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2)) (fabs.f64 im)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) 2)) (pow.f64 re 4))) (sqrt.f64 (fabs.f64 im)))))
(+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (pow.f64 re 6)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (pow.f64 re 4)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))))))
(+.f64 (sqrt.f64 (fabs.f64 im)) (fma.f64 1/4 (/.f64 (*.f64 re re) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) (*.f64 1/2 (/.f64 (+.f64 (*.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2) (fabs.f64 im)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2)) (fabs.f64 im)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) 2))) (pow.f64 (fabs.f64 im) 2))) (pow.f64 re 6)) (*.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2)) (fabs.f64 im)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) 2)) (pow.f64 re 4))) (sqrt.f64 (fabs.f64 im))))))
(sqrt.f64 (sqrt.f64 (pow.f64 re 2)))
(sqrt.f64 (fabs.f64 re))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))
(fma.f64 1/4 (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) (sqrt.f64 (fabs.f64 re)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))
(fma.f64 1/4 (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (fabs.f64 re))))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (pow.f64 im 6)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))))
(+.f64 (fma.f64 1/4 (/.f64 (*.f64 im im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (fabs.f64 re)))) (/.f64 (*.f64 1/2 (*.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (fabs.f64 re)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (pow.f64 (fabs.f64 re) 2))) (pow.f64 im 6))) (sqrt.f64 (fabs.f64 re))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(+.f64 (hypot.f64 re im) re)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (hypot.f64 re im) re)
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 (hypot.f64 re im) re)
(/.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) -1)
(+.f64 (hypot.f64 re im) re)
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(+.f64 (hypot.f64 re im) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 3/4) re)
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (pow.f64 (hypot.f64 re im) 2/3) (cbrt.f64 (hypot.f64 re im)) re)
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)
(fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (hypot.f64 re im))) re)
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re)) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(+.f64 (hypot.f64 re im) re)
(fma.f64 1 re (hypot.f64 re im))
(+.f64 (hypot.f64 re im) re)
(fma.f64 (hypot.f64 re im) 1 re)
(+.f64 (hypot.f64 re im) re)
(fma.f64 re 1 (hypot.f64 re im))
(+.f64 (hypot.f64 re im) re)
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(+.f64 (hypot.f64 re im) re)
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(+.f64 (hypot.f64 re im) re)
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 (hypot.f64 re im) re)
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(+.f64 (hypot.f64 re im) re)
(neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))
(+.f64 (hypot.f64 re im) re)
(neg.f64 (*.f64 -1 (+.f64 (hypot.f64 re im) re)))
(+.f64 (hypot.f64 re im) re)
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (-.f64 (/.f64 re (hypot.f64 re im)) -1)) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (+.f64 re (*.f64 (/.f64 (hypot.f64 re im) re) re)) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (pow.f64 (/.f64 1 (+.f64 (hypot.f64 re im) re)) -1) (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 (hypot.f64 re im) re)
(+.f64 (*.f64 1/2 (+.f64 (hypot.f64 re im) re)) (*.f64 1/2 (+.f64 (hypot.f64 re im) re)))
(+.f64 (hypot.f64 re im) re)
(+.f64 (*.f64 (cbrt.f64 re) (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re))))) (*.f64 (cbrt.f64 (hypot.f64 re im)) (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re))))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 (cbrt.f64 (hypot.f64 re im)) (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im)))))) (*.f64 (cbrt.f64 re) (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im)))))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 1/2) (*.f64 (+.f64 (hypot.f64 re im) re) 1/2))
(+.f64 (hypot.f64 re im) re)
(+.f64 (*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (cbrt.f64 re)) (*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 re re)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (-.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (cbrt.f64 (hypot.f64 re im))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (cbrt.f64 re)))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 2)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 4)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(fabs.f64 (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (fabs.f64 (cbrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (fabs.f64 (cbrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (fabs.f64 (cbrt.f64 (hypot.f64 re im))))
(*.f64 (pow.f64 (hypot.f64 re im) 1/8) (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)) (pow.f64 (hypot.f64 re im) 1/8))
(*.f64 (pow.f64 (hypot.f64 re im) 1/8) (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/4)))
(*.f64 1 (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (hypot.f64 re im))
(*.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(sqrt.f64 (hypot.f64 re im))
(/.f64 (neg.f64 (sqrt.f64 (hypot.f64 re im))) -1)
(sqrt.f64 (hypot.f64 re im))
(/.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(sqrt.f64 (hypot.f64 re im))
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/3)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) 3)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 2/3)
(pow.f64 (hypot.f64 re im) 1/2)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 1)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 2)
(sqrt.f64 (hypot.f64 re im))
(pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 4)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(neg.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) -1))
(sqrt.f64 (hypot.f64 re im))
(neg.f64 (*.f64 -1 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 1 (pow.f64 (hypot.f64 re im) -1/2)) (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -2)) (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (hypot.f64 re im) -1/2)) (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1)) (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (hypot.f64 re im) -1/2)) (sqrt.f64 (hypot.f64 re im)))
(+.f64 (*.f64 1/2 (sqrt.f64 (hypot.f64 re im))) (*.f64 1/2 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (hypot.f64 re im))
(+.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) 1/2) (*.f64 (sqrt.f64 (hypot.f64 re im)) 1/2))
(sqrt.f64 (hypot.f64 re im))

eval882.0ms (1.1%)

Compiler

Compiled 35049 to 21590 computations (38.4% saved)

prune491.0ms (0.6%)

Pruning

16 alts after pruning (8 fresh and 8 done)

PrunedKeptTotal
New99761003
Fresh123
Picked101
Done088
Total999161015
Error
8.3b
Counts
1015 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
54.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (+.f64 (hypot.f64 re im) re)))))
16.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re))))
45.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))
45.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
54.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im))))
44.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
59.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
49.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 373 to 287 computations (23.1% saved)

localize31.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 2 (fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))
0.0b
(pow.f64 (hypot.f64 re im) 3/4)
0.1b
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
16.5b
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
Compiler

Compiled 82 to 32 computations (61% saved)

series1.2s (1.5%)

Counts
4 → 46
Calls

24 calls:

TimeVariablePointExpression
20.0ms
im
@inf
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
10.0ms
im
@0
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
4.0ms
im
@0
(sqrt.f64 (*.f64 2 (fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))
4.0ms
re
@0
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
3.0ms
im
@inf
(sqrt.f64 (*.f64 2 (fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))
Compiler

Compiled 47070 to 38045 computations (19.2% saved)

rewrite1.7s (2.2%)

Algorithm
batch-egg-rewrite
Rules
37×egg-rr
28×egg-rr
28×egg-rr
24×egg-rr
Counts
4 → 117
Calls
Call 1
Inputs
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (hypot.f64 re im) 3/4)
(sqrt.f64 (*.f64 2 (fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (-.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (-.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) (pow.f64 (hypot.f64 re im) 1/8)) (pow.f64 (hypot.f64 re im) 1/8) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 3/4) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (pow.f64 (hypot.f64 re im) 3/4)) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 re im) 1 re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (hypot.f64 re im) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 re im) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (hypot.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (+.f64 (hypot.f64 re im) re)) (*.f64 1/2 (+.f64 (hypot.f64 re im) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 1/2) (*.f64 (+.f64 (hypot.f64 re im) re) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 re im) 1/8) (pow.f64 (hypot.f64 re im) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4)) (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) (sqrt.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 re im) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 re im) (*.f64 2 1/8))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 re im) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (hypot.f64 re im) 1/8) 0) (/.f64 1 (pow.f64 (pow.f64 (hypot.f64 re im) 1/8) -2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1/2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -1)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (*.f64 1/2 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1/2) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (hypot.f64 re im) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (hypot.f64 re im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 re im) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 3/4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 re im) 3/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (pow.f64 (hypot.f64 re im) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) -2)) (pow.f64 (hypot.f64 re im) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (hypot.f64 re im) 3/4) 0) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 re im) 3/4))) (pow.f64 (hypot.f64 re im) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (pow.f64 (hypot.f64 re im) 3/4)) (*.f64 1/2 (pow.f64 (hypot.f64 re im) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/2) (*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))))))

simplify4.9s (6.3%)

Algorithm
egglog
Counts
163 → 229
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))
(+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))
(+.f64 (*.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))) (pow.f64 re 2)) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))
(+.f64 (*.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))) (pow.f64 re 2)) (+.f64 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))
re
re
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) re))
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))))))
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3))))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 3)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) 2))))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/16 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))))))))
(sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))
(+.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 im 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) 2)))))) (pow.f64 re 6)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))))
(sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 im 4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 im 4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) 2)))))) (pow.f64 im 6)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))
(pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (*.f64 (pow.f64 re 4) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 3)) (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3))))))) (*.f64 (pow.f64 re 6) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))) (+.f64 (*.f64 (pow.f64 re 4) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 2)))) (pow.f64 (/.f64 1 re) -3/4))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 2)))) (+.f64 (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 4))) (pow.f64 (/.f64 1 re) -3/4)))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 2)))) (+.f64 (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 4))) (+.f64 (pow.f64 (/.f64 1 re) -3/4) (*.f64 (+.f64 (*.f64 1/960 (+.f64 (*.f64 30 (pow.f64 (pow.f64 im 2) 3)) (*.f64 360 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 3)) (*.f64 3/256 (*.f64 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))) (pow.f64 im 2))))) (*.f64 (pow.f64 (/.f64 1 re) 6) (pow.f64 (/.f64 1 re) -3/4))))))
(+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 3/8 (*.f64 (pow.f64 (/.f64 -1 re) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4)))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 re) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (pow.f64 (/.f64 -1 re) -3/4))) (+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 3/8 (*.f64 (pow.f64 (/.f64 -1 re) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/960 (+.f64 (*.f64 30 (pow.f64 (pow.f64 im 2) 3)) (*.f64 360 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 3)) (*.f64 3/256 (*.f64 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))) (pow.f64 im 2))))) (*.f64 (pow.f64 (/.f64 -1 re) 6) (pow.f64 (/.f64 -1 re) -3/4))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 re) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (pow.f64 (/.f64 -1 re) -3/4))) (+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 3/8 (*.f64 (pow.f64 (/.f64 -1 re) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4)))))))
(pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3))))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 3)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 6))) (+.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))))))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 1 im) 2) (pow.f64 (/.f64 1 im) -3/4)))) (pow.f64 (/.f64 1 im) -3/4))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 1 im) 2) (pow.f64 (/.f64 1 im) -3/4)))) (+.f64 (*.f64 (pow.f64 (/.f64 1 im) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2))) (pow.f64 (/.f64 1 im) -3/4))) (pow.f64 (/.f64 1 im) -3/4)))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 1 im) 2) (pow.f64 (/.f64 1 im) -3/4)))) (+.f64 (*.f64 (+.f64 (*.f64 3/256 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 3)) (*.f64 1/960 (+.f64 (*.f64 360 (*.f64 (pow.f64 re 2) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (*.f64 30 (pow.f64 (pow.f64 re 2) 3)))))) (*.f64 (pow.f64 (/.f64 1 im) -3/4) (pow.f64 (/.f64 1 im) 6))) (+.f64 (*.f64 (pow.f64 (/.f64 1 im) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2))) (pow.f64 (/.f64 1 im) -3/4))) (pow.f64 (/.f64 1 im) -3/4))))
(+.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (/.f64 -1 im) 2)))))
(+.f64 (pow.f64 (/.f64 -1 im) -3/4) (+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (/.f64 -1 im) 2)))) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (pow.f64 (/.f64 -1 im) 4) (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2)))))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (+.f64 (*.f64 3/256 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 3)) (*.f64 1/960 (+.f64 (*.f64 360 (*.f64 (pow.f64 re 2) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (*.f64 30 (pow.f64 (pow.f64 re 2) 3)))))) (pow.f64 (/.f64 -1 im) 6))) (+.f64 (pow.f64 (/.f64 -1 im) -3/4) (+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (/.f64 -1 im) 2)))) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (pow.f64 (/.f64 -1 im) 4) (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2))))))))
(sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))) 2)) (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) 2)))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))) 2)) (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))))))
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))) (pow.f64 (/.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3))))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 3)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) 2))))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/16 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))) (pow.f64 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) 2)) (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))) 2))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))) (pow.f64 (/.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (-.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (-.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(/.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) -1)
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)
(fma.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) (pow.f64 (hypot.f64 re im) 1/8)) (pow.f64 (hypot.f64 re im) 1/8) re)
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 3/4) re)
(fma.f64 (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (pow.f64 (hypot.f64 re im) 3/4)) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(fma.f64 1 re (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(fma.f64 re 1 (hypot.f64 re im))
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))
(neg.f64 (*.f64 -1 (+.f64 (hypot.f64 re im) re)))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 (*.f64 1/2 (+.f64 (hypot.f64 re im) re)) (*.f64 1/2 (+.f64 (hypot.f64 re im) re)))
(+.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 1/2) (*.f64 (+.f64 (hypot.f64 re im) re) 1/2))
(fabs.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (pow.f64 (hypot.f64 re im) 1/8) (pow.f64 (hypot.f64 re im) 1/8))
(*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))
(*.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4)) (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) (sqrt.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4)))
(*.f64 1 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)
(/.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)
(/.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) -1)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) 3)
(pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)
(pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 2/3)
(pow.f64 (hypot.f64 re im) 1/4)
(pow.f64 (hypot.f64 re im) (*.f64 2 1/8))
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/2)
(pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 2)
(pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) 4)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/4))
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -1))
(neg.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 1/8) 0) (/.f64 1 (pow.f64 (pow.f64 (hypot.f64 re im) 1/8) -2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1/2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -1)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 1/2 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (*.f64 1/2 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1/2) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1/2))
(fabs.f64 (pow.f64 (hypot.f64 re im) 3/4))
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4))
(*.f64 1 (pow.f64 (hypot.f64 re im) 3/4))
(*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)
(/.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)
(/.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 3/4)) -1)
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 3)
(pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 6)
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 3) 1/3)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/2)
(pow.f64 (hypot.f64 re im) 3/4)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/2)
(pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 2)
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 3))
(neg.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) -1))
(neg.f64 (*.f64 -1 (pow.f64 (hypot.f64 re im) 3/4)))
(if (!=.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) -2)) (pow.f64 (hypot.f64 re im) 3/4))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 3/4) 0) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 re im) 3/4))) (pow.f64 (hypot.f64 re im) 3/4))
(+.f64 (*.f64 1/2 (pow.f64 (hypot.f64 re im) 3/4)) (*.f64 1/2 (pow.f64 (hypot.f64 re im) 3/4)))
(+.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/2) (*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/2))
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(/.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1)
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 4)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))
Outputs
(*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))
(*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4))
(+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))
(+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))
(+.f64 (*.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))) (pow.f64 re 2)) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))
(fma.f64 (fma.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (/.f64 (*.f64 1/8 (pow.f64 (fabs.f64 im) 3/4)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im)))) (pow.f64 re 2) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4))))
(+.f64 (*.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))) (pow.f64 re 2)) (+.f64 (*.f64 (pow.f64 re 4) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))
(fma.f64 (fma.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (/.f64 (*.f64 1/8 (pow.f64 (fabs.f64 im) 3/4)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im)))) (pow.f64 re 2) (fma.f64 (pow.f64 re 4) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (fabs.f64 im)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 im) 3)))) (sqrt.f64 (fabs.f64 im))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))) 2))) (pow.f64 (fabs.f64 im) 3/4)) (sqrt.f64 (sqrt.f64 (fabs.f64 im)))) (fma.f64 3/64 (/.f64 (pow.f64 (fabs.f64 im) 3/4) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (pow.f64 (fabs.f64 im) 3))) (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (*.f64 (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 im) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 im) -1) 2))) (pow.f64 (fabs.f64 im) 2)))) (pow.f64 (fabs.f64 im) 3/4))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))))
re
re
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) re))
(fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) (fma.f64 (pow.f64 im 2) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2))) re))
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))))))
(+.f64 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) (fma.f64 (pow.f64 im 2) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2))) re)) (*.f64 (pow.f64 im 4) (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4)) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (*.f64 3/64 (/.f64 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2) (pow.f64 (fabs.f64 re) 2))))))))
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (+.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (+.f64 (*.f64 (pow.f64 im 6) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3))))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 3)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) 2))))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/16 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 re (*.f64 (pow.f64 im 4) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))))))))
(fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) (fma.f64 (pow.f64 im 2) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2))) (fma.f64 (pow.f64 im 6) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (fma.f64 3/256 (/.f64 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 2)) (fma.f64 1/960 (fma.f64 360 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 4)) (*.f64 30 (pow.f64 (pow.f64 (pow.f64 (fabs.f64 re) 3) -1) 2))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (fabs.f64 re) 2)) 3)))) (pow.f64 (fabs.f64 re) 3/4)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3))))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (fabs.f64 re))) (*.f64 -1/8 (/.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 2))))) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (/.f64 (*.f64 3/16 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4))) (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 2)))))) (+.f64 re (*.f64 (pow.f64 im 4) (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4)) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (*.f64 3/64 (/.f64 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2) (pow.f64 (fabs.f64 re) 2)))))))))))
(sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))
(sqrt.f64 (sqrt.f64 (fabs.f64 im)))
(+.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))))))
(+.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (/.f64 (*.f64 1/8 (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))))
(fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (fabs.f64 im)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 im) 3)))) (sqrt.f64 (fabs.f64 im))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))) 2))) (pow.f64 re 4)) (sqrt.f64 (sqrt.f64 (fabs.f64 im)))) (+.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (/.f64 (*.f64 1/8 (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) (+.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (*.f64 (sqrt.f64 (pow.f64 im 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 im 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) 2)))))) (pow.f64 re 6)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))))
(fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (fabs.f64 im)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 im) 3)))) (sqrt.f64 (fabs.f64 im))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))) 2))) (pow.f64 re 4)) (sqrt.f64 (sqrt.f64 (fabs.f64 im)))) (+.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (fma.f64 1/8 (/.f64 (pow.f64 re 2) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))) (/.f64 (*.f64 1/2 (*.f64 (fma.f64 1/2 (/.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (fabs.f64 im)) (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (fabs.f64 im)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 im) 3))))) (pow.f64 (fabs.f64 im) 2))) (sqrt.f64 (fabs.f64 im))) (*.f64 -1/8 (/.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (fabs.f64 im)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 im) 3)))) (sqrt.f64 (fabs.f64 im))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))) 2))) (pow.f64 (fabs.f64 im) 2)))) (pow.f64 re 6))) (sqrt.f64 (sqrt.f64 (fabs.f64 im)))))))
(sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))
(sqrt.f64 (sqrt.f64 (fabs.f64 re)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))
(fma.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (sqrt.f64 (sqrt.f64 (fabs.f64 re))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 im 4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))
(fma.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 im 4)) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 im 4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) 2)))))) (pow.f64 im 6)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 im 4))) (*.f64 1/2 (*.f64 (fma.f64 1/2 (/.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3))))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (fabs.f64 re))) (*.f64 -1/8 (/.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 2)))) (pow.f64 im 6)))) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (fma.f64 1/8 (/.f64 (pow.f64 im 2) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))))
(pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)
(pow.f64 (fabs.f64 im) 3/4)
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))
(fma.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (pow.f64 (fabs.f64 im) 3/4))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (*.f64 (pow.f64 re 4) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))
(fma.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (*.f64 (+.f64 (*.f64 (pow.f64 re 4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 im) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 im) -1) 2))) (pow.f64 (fabs.f64 im) 2))))) 1) (pow.f64 (fabs.f64 im) 3/4)))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 3)) (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3))))))) (*.f64 (pow.f64 re 6) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))) (+.f64 (*.f64 (pow.f64 re 4) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2)))))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))
(+.f64 (*.f64 (pow.f64 (fabs.f64 im) 3/4) (+.f64 (*.f64 (fma.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (fabs.f64 im) 2)) 3) (fma.f64 3/256 (/.f64 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 im) -1) 2))) (pow.f64 (fabs.f64 im) 2)) (pow.f64 (fabs.f64 im) 2)) (*.f64 1/960 (fma.f64 360 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2)) (pow.f64 (fabs.f64 im) 4)) (*.f64 30 (pow.f64 (pow.f64 (pow.f64 (fabs.f64 im) 3) -1) 2)))))) (pow.f64 re 6)) (*.f64 (pow.f64 re 4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 im) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 im) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 im) -1) 2))) (pow.f64 (fabs.f64 im) 2))))))) (fma.f64 3/8 (/.f64 (*.f64 (pow.f64 re 2) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (pow.f64 (fabs.f64 im) 3/4)))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 2)))) (pow.f64 (/.f64 1 re) -3/4))
(fma.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (pow.f64 re -1) -3/4) (pow.f64 (pow.f64 re -1) 2))) (pow.f64 (pow.f64 re -1) -3/4))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 2)))) (+.f64 (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 4))) (pow.f64 (/.f64 1 re) -3/4)))
(fma.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (pow.f64 re -1) -3/4) (pow.f64 (pow.f64 re -1) 2))) (fma.f64 (fma.f64 1/32 (fma.f64 -3 (pow.f64 im 4) (*.f64 -12 (*.f64 (pow.f64 im 4) 1/4))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (*.f64 3/8 3/8)))) (*.f64 (pow.f64 (pow.f64 re -1) 4) (pow.f64 (pow.f64 re -1) -3/4)) (pow.f64 (pow.f64 re -1) -3/4)))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 2)))) (+.f64 (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (*.f64 (pow.f64 (/.f64 1 re) -3/4) (pow.f64 (/.f64 1 re) 4))) (+.f64 (pow.f64 (/.f64 1 re) -3/4) (*.f64 (+.f64 (*.f64 1/960 (+.f64 (*.f64 30 (pow.f64 (pow.f64 im 2) 3)) (*.f64 360 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 3)) (*.f64 3/256 (*.f64 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))) (pow.f64 im 2))))) (*.f64 (pow.f64 (/.f64 1 re) 6) (pow.f64 (/.f64 1 re) -3/4))))))
(fma.f64 3/8 (*.f64 (pow.f64 im 2) (*.f64 (pow.f64 (pow.f64 re -1) -3/4) (pow.f64 (pow.f64 re -1) 2))) (fma.f64 (fma.f64 1/32 (fma.f64 -3 (pow.f64 im 4) (*.f64 -12 (*.f64 (pow.f64 im 4) 1/4))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (*.f64 3/8 3/8)))) (*.f64 (pow.f64 (pow.f64 re -1) 4) (pow.f64 (pow.f64 re -1) -3/4)) (*.f64 (+.f64 (*.f64 (fma.f64 1/960 (fma.f64 30 (pow.f64 (pow.f64 im 2) 3) (*.f64 360 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (pow.f64 im 2)))) (fma.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 3) (*.f64 3/256 (*.f64 (fma.f64 -3 (pow.f64 im 4) (*.f64 -12 (*.f64 (pow.f64 im 4) 1/4))) (pow.f64 im 2))))) (pow.f64 (pow.f64 re -1) 6)) 1) (pow.f64 (pow.f64 re -1) -3/4))))
(+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 3/8 (*.f64 (pow.f64 (/.f64 -1 re) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4)))))
(+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 (*.f64 3/8 (pow.f64 (pow.f64 re -1) 2)) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 re) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (pow.f64 (/.f64 -1 re) -3/4))) (+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 3/8 (*.f64 (pow.f64 (/.f64 -1 re) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4))))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 re -1) 4) (fma.f64 1/32 (fma.f64 -3 (pow.f64 im 4) (*.f64 -12 (*.f64 (pow.f64 im 4) 1/4))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (*.f64 3/8 3/8))))) 1) (pow.f64 (/.f64 -1 re) -3/4)) (*.f64 (*.f64 3/8 (pow.f64 (pow.f64 re -1) 2)) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4))))
(+.f64 (*.f64 (+.f64 (*.f64 1/960 (+.f64 (*.f64 30 (pow.f64 (pow.f64 im 2) 3)) (*.f64 360 (*.f64 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2) (pow.f64 im 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 3)) (*.f64 3/256 (*.f64 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2))) (pow.f64 im 2))))) (*.f64 (pow.f64 (/.f64 -1 re) 6) (pow.f64 (/.f64 -1 re) -3/4))) (+.f64 (*.f64 (pow.f64 (/.f64 -1 re) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -3 (pow.f64 (pow.f64 im 2) 2)) (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 im 2)) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 2))) (pow.f64 (/.f64 -1 re) -3/4))) (+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 3/8 (*.f64 (pow.f64 (/.f64 -1 re) 2) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4)))))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 re) -3/4) (+.f64 (*.f64 (fma.f64 1/960 (fma.f64 30 (pow.f64 (pow.f64 im 2) 3) (*.f64 360 (*.f64 (*.f64 (pow.f64 im 4) 1/4) (pow.f64 im 2)))) (fma.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 im 2)) 3) (*.f64 3/256 (*.f64 (fma.f64 -3 (pow.f64 im 4) (*.f64 -12 (*.f64 (pow.f64 im 4) 1/4))) (pow.f64 im 2))))) (pow.f64 (/.f64 -1 re) 6)) (*.f64 (pow.f64 (pow.f64 re -1) 4) (fma.f64 1/32 (fma.f64 -3 (pow.f64 im 4) (*.f64 -12 (*.f64 (pow.f64 im 4) 1/4))) (*.f64 1/2 (*.f64 (pow.f64 im 4) (*.f64 3/8 3/8))))))) (+.f64 (pow.f64 (/.f64 -1 re) -3/4) (*.f64 (*.f64 3/8 (pow.f64 (pow.f64 re -1) 2)) (*.f64 (pow.f64 im 2) (pow.f64 (/.f64 -1 re) -3/4)))))
(pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)
(pow.f64 (fabs.f64 re) 3/4)
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4))
(fma.f64 3/8 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (pow.f64 im 2)) (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 3/4))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))))
(fma.f64 3/8 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (pow.f64 im 2)) (pow.f64 (fabs.f64 re) 2)) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) 1) (pow.f64 (fabs.f64 re) 3/4)))
(+.f64 (*.f64 3/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3))))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 3)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (pow.f64 im 6))) (+.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (pow.f64 im 4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))))))
(fma.f64 3/8 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (pow.f64 im 2)) (pow.f64 (fabs.f64 re) 2)) (fma.f64 (fma.f64 3/256 (/.f64 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 2)) (fma.f64 1/960 (fma.f64 360 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 4)) (*.f64 30 (pow.f64 (pow.f64 (pow.f64 (fabs.f64 re) 3) -1) 2))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (fabs.f64 re) 2)) 3)))) (*.f64 (pow.f64 (fabs.f64 re) 3/4) (pow.f64 im 6)) (*.f64 (+.f64 (*.f64 (pow.f64 im 4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) 1) (pow.f64 (fabs.f64 re) 3/4))))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 1 im) 2) (pow.f64 (/.f64 1 im) -3/4)))) (pow.f64 (/.f64 1 im) -3/4))
(fma.f64 3/8 (*.f64 (*.f64 (pow.f64 re 2) (pow.f64 (pow.f64 im -1) 2)) (pow.f64 (pow.f64 im -1) -3/4)) (pow.f64 (pow.f64 im -1) -3/4))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 1 im) 2) (pow.f64 (/.f64 1 im) -3/4)))) (+.f64 (*.f64 (pow.f64 (/.f64 1 im) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2))) (pow.f64 (/.f64 1 im) -3/4))) (pow.f64 (/.f64 1 im) -3/4)))
(fma.f64 3/8 (*.f64 (*.f64 (pow.f64 re 2) (pow.f64 (pow.f64 im -1) 2)) (pow.f64 (pow.f64 im -1) -3/4)) (*.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 im -1) 4) (fma.f64 1/32 (fma.f64 -12 (*.f64 (pow.f64 re 4) 1/4) (*.f64 (pow.f64 re 4) -3)) (*.f64 1/2 (*.f64 (pow.f64 re 4) (*.f64 3/8 3/8))))) 1) (pow.f64 (pow.f64 im -1) -3/4)))
(+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 1 im) 2) (pow.f64 (/.f64 1 im) -3/4)))) (+.f64 (*.f64 (+.f64 (*.f64 3/256 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 3)) (*.f64 1/960 (+.f64 (*.f64 360 (*.f64 (pow.f64 re 2) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (*.f64 30 (pow.f64 (pow.f64 re 2) 3)))))) (*.f64 (pow.f64 (/.f64 1 im) -3/4) (pow.f64 (/.f64 1 im) 6))) (+.f64 (*.f64 (pow.f64 (/.f64 1 im) 4) (*.f64 (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2))) (pow.f64 (/.f64 1 im) -3/4))) (pow.f64 (/.f64 1 im) -3/4))))
(fma.f64 3/8 (*.f64 (*.f64 (pow.f64 re 2) (pow.f64 (pow.f64 im -1) 2)) (pow.f64 (pow.f64 im -1) -3/4)) (fma.f64 (fma.f64 3/256 (*.f64 (pow.f64 re 2) (fma.f64 -12 (*.f64 (pow.f64 re 4) 1/4) (*.f64 (pow.f64 re 4) -3))) (fma.f64 1/6 (*.f64 (pow.f64 (pow.f64 re 3) 2) 27/512) (*.f64 1/960 (fma.f64 360 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 4) 1/4)) (*.f64 (pow.f64 (pow.f64 re 3) 2) 30))))) (*.f64 (pow.f64 (pow.f64 im -1) -3/4) (pow.f64 (pow.f64 im -1) 6)) (*.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 im -1) 4) (fma.f64 1/32 (fma.f64 -12 (*.f64 (pow.f64 re 4) 1/4) (*.f64 (pow.f64 re 4) -3)) (*.f64 1/2 (*.f64 (pow.f64 re 4) (*.f64 3/8 3/8))))) 1) (pow.f64 (pow.f64 im -1) -3/4))))
(+.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (/.f64 -1 im) 2)))))
(+.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (*.f64 3/8 (pow.f64 re 2)) (*.f64 (pow.f64 (pow.f64 im -1) 2) (pow.f64 (/.f64 -1 im) -3/4))))
(+.f64 (pow.f64 (/.f64 -1 im) -3/4) (+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (/.f64 -1 im) 2)))) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (pow.f64 (/.f64 -1 im) 4) (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2)))))))
(+.f64 (pow.f64 (/.f64 -1 im) -3/4) (fma.f64 3/8 (*.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 -1 im) -3/4)) (pow.f64 (pow.f64 im -1) 2)) (*.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (pow.f64 im -1) 4)) (fma.f64 1/32 (fma.f64 -12 (*.f64 (pow.f64 re 4) 1/4) (*.f64 (pow.f64 re 4) -3)) (*.f64 1/2 (*.f64 (pow.f64 re 4) (*.f64 3/8 3/8)))))))
(+.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (+.f64 (*.f64 3/256 (*.f64 (pow.f64 re 2) (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2))))) (+.f64 (*.f64 1/6 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 3)) (*.f64 1/960 (+.f64 (*.f64 360 (*.f64 (pow.f64 re 2) (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2))) (*.f64 30 (pow.f64 (pow.f64 re 2) 3)))))) (pow.f64 (/.f64 -1 im) 6))) (+.f64 (pow.f64 (/.f64 -1 im) -3/4) (+.f64 (*.f64 3/8 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (/.f64 -1 im) 2)))) (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (*.f64 (pow.f64 (/.f64 -1 im) 4) (+.f64 (*.f64 1/32 (+.f64 (*.f64 -12 (pow.f64 (*.f64 1/2 (pow.f64 re 2)) 2)) (*.f64 -3 (pow.f64 (pow.f64 re 2) 2)))) (*.f64 1/2 (pow.f64 (*.f64 3/8 (pow.f64 re 2)) 2))))))))
(+.f64 (*.f64 (+.f64 (*.f64 (fma.f64 3/256 (*.f64 (pow.f64 re 2) (fma.f64 -12 (*.f64 (pow.f64 re 4) 1/4) (*.f64 (pow.f64 re 4) -3))) (fma.f64 1/6 (*.f64 (pow.f64 (pow.f64 re 3) 2) 27/512) (*.f64 1/960 (fma.f64 360 (*.f64 (pow.f64 re 2) (*.f64 (pow.f64 re 4) 1/4)) (*.f64 (pow.f64 (pow.f64 re 3) 2) 30))))) (pow.f64 (/.f64 -1 im) 6)) 1) (pow.f64 (/.f64 -1 im) -3/4)) (fma.f64 3/8 (*.f64 (*.f64 (pow.f64 re 2) (pow.f64 (/.f64 -1 im) -3/4)) (pow.f64 (pow.f64 im -1) 2)) (*.f64 (*.f64 (pow.f64 (/.f64 -1 im) -3/4) (pow.f64 (pow.f64 im -1) 4)) (fma.f64 1/32 (fma.f64 -12 (*.f64 (pow.f64 re 4) 1/4) (*.f64 (pow.f64 re 4) -3)) (*.f64 1/2 (*.f64 (pow.f64 re 4) (*.f64 3/8 3/8)))))))
(sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))
(sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))) 2)) (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) (/.f64 (+.f64 re (*.f64 1/2 (*.f64 (-.f64 (*.f64 2 (fma.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (/.f64 (*.f64 1/8 (pow.f64 (fabs.f64 im) 3/4)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) -1) 2)) (pow.f64 re 2)))) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))))) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) 2)))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))) 2)) (pow.f64 re 2)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4)))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (sqrt.f64 (pow.f64 im 2)) 3/4))))))))
(fma.f64 1/2 (/.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) -1) 2) (*.f64 2 (fma.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (/.f64 (*.f64 1/8 (pow.f64 (fabs.f64 im) 3/4)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im)))))) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) 2)) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4))))) (+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) (/.f64 (+.f64 re (*.f64 1/2 (*.f64 (-.f64 (*.f64 2 (fma.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)) (pow.f64 (fabs.f64 im) 2)) (/.f64 (*.f64 1/8 (pow.f64 (fabs.f64 im) 3/4)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3/2) (fabs.f64 im))))) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))) -1) 2)) (pow.f64 re 2)))) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 im))) (pow.f64 (fabs.f64 im) 3/4)))))))
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2)))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re))))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))) (pow.f64 (/.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))))
(+.f64 (/.f64 (+.f64 (*.f64 (pow.f64 im 2) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2)))) (*.f64 1/2 (*.f64 (fma.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4)) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (*.f64 3/64 (/.f64 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2) (pow.f64 (fabs.f64 re) 2)))))) (neg.f64 (pow.f64 (/.f64 (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) 2))) (pow.f64 im 4)))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re))))
(+.f64 (/.f64 (*.f64 (pow.f64 im 2) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (+.f64 (*.f64 3/256 (/.f64 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (+.f64 (*.f64 1/960 (+.f64 (*.f64 360 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2) 2))) (*.f64 30 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 3) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3))))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 3)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (*.f64 1/8 (/.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) 2))))))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/16 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2))) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))) (pow.f64 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) 2)) (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))))) (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))) 2))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 3/8 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)) 2)) (*.f64 1/32 (+.f64 (*.f64 -12 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 -3 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (pow.f64 re 2))) 2) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (pow.f64 (/.f64 1/8 (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (*.f64 3/64 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))))))))) (pow.f64 (/.f64 (+.f64 (*.f64 3/8 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2))) (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re)))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 3/4)) re))))))
(+.f64 (/.f64 (+.f64 (*.f64 (pow.f64 im 2) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2)))) (*.f64 1/2 (*.f64 (fma.f64 2 (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (fma.f64 3/256 (/.f64 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 2)) (fma.f64 1/960 (fma.f64 360 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (pow.f64 (fabs.f64 re) 4)) (*.f64 30 (pow.f64 (pow.f64 (pow.f64 (fabs.f64 re) 3) -1) 2))) (*.f64 1/6 (pow.f64 (/.f64 3/8 (pow.f64 (fabs.f64 re) 2)) 3)))) (pow.f64 (fabs.f64 re) 3/4)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3))))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (fabs.f64 re))) (*.f64 -1/8 (/.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 2))))) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (/.f64 (*.f64 3/16 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4))) (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 2)))))) (/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) 2) (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4)) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (*.f64 3/64 (/.f64 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2) (pow.f64 (fabs.f64 re) 2)))))))) (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2)))) (pow.f64 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re))) 2))) (pow.f64 im 6)))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (*.f64 (pow.f64 (fabs.f64 re) 3/4) (fma.f64 1/2 (/.f64 (*.f64 3/8 3/8) (pow.f64 (fabs.f64 re) 4)) (*.f64 1/32 (/.f64 (+.f64 (*.f64 -12 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2))) (*.f64 -3 (pow.f64 (pow.f64 (fabs.f64 re) -1) 2))) (pow.f64 (fabs.f64 re) 2))))) (fma.f64 1/2 (/.f64 (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1/2 (/.f64 (/.f64 1/4 (pow.f64 (fabs.f64 re) 2)) (fabs.f64 re)) (neg.f64 (/.f64 (*.f64 1/4 1/4) (pow.f64 (fabs.f64 re) 3)))) (sqrt.f64 (fabs.f64 re))) (neg.f64 (pow.f64 (/.f64 1/8 (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) 2))) (pow.f64 (fabs.f64 re) 3/4)) (sqrt.f64 (sqrt.f64 (fabs.f64 re)))) (*.f64 3/64 (/.f64 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2) (pow.f64 (fabs.f64 re) 2)))))) (neg.f64 (pow.f64 (/.f64 (fma.f64 1/8 (/.f64 (pow.f64 (fabs.f64 re) 3/4) (*.f64 (fabs.f64 re) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3/2))) (/.f64 (*.f64 3/8 (*.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) 2))) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))) (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (sqrt.f64 (fabs.f64 re))) (pow.f64 (fabs.f64 re) 3/4) re)))))
(*.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)))
(+.f64 re (hypot.f64 re im))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 2)) (cbrt.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (-.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (-.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) 2/3) (*.f64 (cbrt.f64 re) (-.f64 (cbrt.f64 re) (cbrt.f64 (hypot.f64 re im))))) (+.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 re)))
(*.f64 1 (+.f64 (hypot.f64 re im) re))
(+.f64 re (hypot.f64 re im))
(*.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(/.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(/.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) -1)
(+.f64 re (hypot.f64 re im))
(fma.f64 (cbrt.f64 (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) 2/3) re)
(fma.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) (pow.f64 (hypot.f64 re im) 1/8)) (pow.f64 (hypot.f64 re im) 1/8) re)
(fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (pow.f64 (hypot.f64 re im) 3/4) re)
(fma.f64 (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (pow.f64 (hypot.f64 re im) 3/4)) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) re)
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 1 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(fma.f64 1 re (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) 1 re)
(+.f64 re (hypot.f64 re im))
(fma.f64 re 1 (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3) 1/3)
(+.f64 re (hypot.f64 re im))
(pow.f64 (cbrt.f64 (+.f64 (hypot.f64 re im) re)) 3)
(+.f64 re (hypot.f64 re im))
(pow.f64 (+.f64 (hypot.f64 re im) re) 1)
(+.f64 re (hypot.f64 re im))
(cbrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) 3))
(+.f64 re (hypot.f64 re im))
(neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) -1))
(+.f64 re (hypot.f64 re im))
(neg.f64 (*.f64 -1 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (hypot.f64 re im) 0) (*.f64 (hypot.f64 re im) (+.f64 1 (/.f64 re (hypot.f64 re im)))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re))) 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) 3) (pow.f64 re 3)) (-.f64 (pow.f64 (hypot.f64 re im) 2) (*.f64 re (-.f64 (hypot.f64 re im) re)))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 re (hypot.f64 re im)) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (pow.f64 re 2)) (-.f64 (hypot.f64 re im) re)) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 re 2) (pow.f64 (hypot.f64 re im) 2)) (-.f64 re (hypot.f64 re im))) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (-.f64 (hypot.f64 re im) re) 0) (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) 2) (pow.f64 re 2)) (-.f64 (hypot.f64 re im) re)) (+.f64 re (hypot.f64 re im)))
(if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (pow.f64 (+.f64 (hypot.f64 re im) re) -1)) (+.f64 (hypot.f64 re im) re))
(if (!=.f64 (+.f64 re (hypot.f64 re im)) 0) (pow.f64 (pow.f64 (+.f64 re (hypot.f64 re im)) -1) -1) (+.f64 re (hypot.f64 re im)))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
(+.f64 re (hypot.f64 re im))
(+.f64 (*.f64 1/2 (+.f64 (hypot.f64 re im) re)) (*.f64 1/2 (+.f64 (hypot.f64 re im) re)))
(+.f64 re (hypot.f64 re im))
(+.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 1/2) (*.f64 (+.f64 (hypot.f64 re im) re) 1/2))
(+.f64 re (hypot.f64 re im))
(fabs.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (hypot.f64 re im) 1/8) (pow.f64 (hypot.f64 re im) 1/8))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (cbrt.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4)) (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/8)))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) (sqrt.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4)))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) (sqrt.f64 (pow.f64 (hypot.f64 re im) 3/8)))
(*.f64 1 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(/.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(/.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) -1)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/3)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/4))
(pow.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) 3)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 2/3)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/8) 2/3)
(pow.f64 (hypot.f64 re im) 1/4)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (hypot.f64 re im) (*.f64 2 1/8))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/2)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 2)
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 1/8) 4)
(cbrt.f64 (pow.f64 (hypot.f64 re im) 3/4))
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -1))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(neg.f64 (*.f64 -1 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 1/8) 0) (/.f64 1 (pow.f64 (pow.f64 (hypot.f64 re im) 1/8) -2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 1/8) 0) (pow.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 1/8) -2) -1) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (sqrt.f64 (hypot.f64 re im)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1/2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) -1)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (hypot.f64 re im)) -1/2)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(+.f64 (*.f64 1/2 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) (*.f64 1/2 (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1/2) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 1/2))
(sqrt.f64 (sqrt.f64 (hypot.f64 re im)))
(fabs.f64 (pow.f64 (hypot.f64 re im) 3/4))
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (hypot.f64 re im)))
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))))
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4))
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(*.f64 1 (pow.f64 (hypot.f64 re im) 3/4))
(pow.f64 (hypot.f64 re im) 3/4)
(*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)
(pow.f64 (hypot.f64 re im) 3/4)
(/.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)
(pow.f64 (hypot.f64 re im) 3/4)
(/.f64 (neg.f64 (pow.f64 (hypot.f64 re im) 3/4)) -1)
(pow.f64 (hypot.f64 re im) 3/4)
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) 3)
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (pow.f64 (hypot.f64 re im) 1/8) 6)
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 3) 1/3)
(pow.f64 (hypot.f64 re im) 3/4)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 1)
(pow.f64 (hypot.f64 re im) 3/4)
(pow.f64 (pow.f64 (hypot.f64 re im) 3/2) 1/2)
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (hypot.f64 re im) 3/4)
(pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/2)
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 2)
(sqrt.f64 (pow.f64 (hypot.f64 re im) 3/2))
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/4) 3))
(pow.f64 (hypot.f64 re im) 3/4)
(neg.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) -1))
(pow.f64 (hypot.f64 re im) 3/4)
(neg.f64 (*.f64 -1 (pow.f64 (hypot.f64 re im) 3/4)))
(pow.f64 (hypot.f64 re im) 3/4)
(if (!=.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (hypot.f64 re im)) 3/4) -2)) (pow.f64 (hypot.f64 re im) 3/4))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 3/8) 0) (pow.f64 (pow.f64 (pow.f64 (hypot.f64 re im) 3/8) -2) -1) (pow.f64 (hypot.f64 re im) 3/4))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 3/4) 0) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 re im) 3/4))) (pow.f64 (hypot.f64 re im) 3/4))
(if (!=.f64 (pow.f64 (hypot.f64 re im) 3/4) 0) (pow.f64 (/.f64 1 (pow.f64 (hypot.f64 re im) 3/4)) -1) (pow.f64 (hypot.f64 re im) 3/4))
(+.f64 (*.f64 1/2 (pow.f64 (hypot.f64 re im) 3/4)) (*.f64 1/2 (pow.f64 (hypot.f64 re im) 3/4)))
(pow.f64 (hypot.f64 re im) 3/4)
(+.f64 (*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/2) (*.f64 (pow.f64 (hypot.f64 re im) 3/4) 1/2))
(pow.f64 (hypot.f64 re im) 3/4)
(fabs.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))))
(*.f64 1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -1)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 3)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 1/2)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 1/2)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 2)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))) 4)
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 3))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) -2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(if (!=.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) 0) (/.f64 1 (pow.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) 0) (pow.f64 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 2) -1/2) -1) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)) -1)) (sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2)))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2))))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) 2)) 1/2))
(sqrt.f64 (*.f64 (+.f64 re (hypot.f64 re im)) 2))

localize14.0ms (0%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

localize67.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 1 (*.f64 -1 im)))
0.8b
(+.f64 (hypot.f64 re im) re)
Compiler

Compiled 109 to 69 computations (36.7% saved)

series10.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
im
@0
(/.f64 1 (/.f64 1 (*.f64 -1 im)))
0.0ms
im
@inf
(/.f64 1 (/.f64 1 (*.f64 -1 im)))
0.0ms
im
@-inf
(/.f64 1 (/.f64 1 (*.f64 -1 im)))
Compiler

Compiled 195 to 135 computations (30.8% saved)

rewrite1.7s (2.2%)

Algorithm
batch-egg-rewrite
Rules
64×egg-rr
Counts
1 → 64
Calls
Call 1
Inputs
(/.f64 1 (/.f64 1 (*.f64 -1 im)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 1 (/.f64 -1 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (pow.f64 im -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (/.f64 (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2) (/.f64 -1 (cbrt.f64 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 -1 im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) (/.f64 1 (cbrt.f64 (pow.f64 im -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -1))) (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 -1 im))) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (pow.f64 (pow.f64 im 2) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 -1 (/.f64 -1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 -1 (/.f64 -1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (cbrt.f64 im)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (pow.f64 im -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 -1 im))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) (cbrt.f64 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 -1 (cbrt.f64 im)))) (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (pow.f64 (pow.f64 im 2) -1))) (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (/.f64 -1 im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -1))) (/.f64 -1 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))))) (neg.f64 (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 (pow.f64 im -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 im) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 -1 (/.f64 -1 im)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 -1 (/.f64 -1 im)) (/.f64 0 (pow.f64 im -1))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 -1 (/.f64 -1 im)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 im) 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (pow.f64 im 3)) 0) (pow.f64 (/.f64 -1 (pow.f64 im 3)) -1/3) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (cbrt.f64 im)) 0) (pow.f64 (/.f64 -1 (cbrt.f64 im)) -3) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 im) 0) (neg.f64 im) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 im 0) (neg.f64 im) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (pow.f64 im -1)) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (pow.f64 im -1)))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 1 (/.f64 1 (/.f64 -1 (cbrt.f64 im))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (pow.f64 im -1)))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 1 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (cbrt.f64 (/.f64 (pow.f64 (pow.f64 im 2) -1) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (cbrt.f64 (/.f64 (pow.f64 (pow.f64 im 2) -1) (/.f64 -1 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) 0) (/.f64 1 (pow.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) -1/3)) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) -3)) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (/.f64 -1 (/.f64 -1 im))) 0) (/.f64 (-.f64 0 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (+.f64 0 (/.f64 -1 (/.f64 -1 im)))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1)))) 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 0 (pow.f64 im -1)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 1 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (/.f64 -1 im))) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 -1 (pow.f64 im -1)))))))

simplify2.4s (3%)

Algorithm
egglog
Counts
76 → 87
Calls
Call 1
Inputs
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 -1 im)
(*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 1 (/.f64 -1 (cbrt.f64 im))))
(*.f64 1 (/.f64 -1 (pow.f64 im -1)))
(*.f64 (/.f64 -1 (pow.f64 im -1)) 1)
(*.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2) -1))
(*.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (/.f64 (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2) (/.f64 -1 (cbrt.f64 im))))
(*.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)) 2))))
(*.f64 (/.f64 -1 (/.f64 -1 im)) -1)
(*.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) (/.f64 1 (cbrt.f64 (pow.f64 im -1))))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -1))) (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))))
(*.f64 (cbrt.f64 (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 -1 im))) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 im))))
(*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (pow.f64 (pow.f64 im 2) -1))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2))
(*.f64 -1 (/.f64 -1 (/.f64 -1 im)))
(*.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2))
(-.f64 0 (/.f64 -1 (/.f64 -1 im)))
(-.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))
(/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (cbrt.f64 im)))
(/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))
(/.f64 (/.f64 -1 (pow.f64 im -1)) 1)
(/.f64 -1 (pow.f64 im -1))
(/.f64 1 (/.f64 -1 im))
(/.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) (cbrt.f64 (pow.f64 im -1)))
(/.f64 (cbrt.f64 (/.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 -1 (cbrt.f64 im)))) (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2))
(/.f64 (cbrt.f64 (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (pow.f64 (pow.f64 im 2) -1))) (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2))
(/.f64 (/.f64 -1 (/.f64 -1 im)) -1)
(/.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -1))) (/.f64 -1 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))))) (neg.f64 (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2)))
(pow.f64 (/.f64 -1 (pow.f64 im -1)) 1)
(pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 3)
(pow.f64 (/.f64 -1 im) -1)
(pow.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) 1/3)
(cbrt.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)))
(neg.f64 (/.f64 -1 (/.f64 -1 im)))
(neg.f64 (-.f64 (/.f64 -1 (/.f64 -1 im)) (/.f64 0 (pow.f64 im -1))))
(neg.f64 (-.f64 (/.f64 -1 (/.f64 -1 im)) 0))
(if (!=.f64 (/.f64 -1 im) 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 -1 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 1 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (pow.f64 im 3)) 0) (pow.f64 (/.f64 -1 (pow.f64 im 3)) -1/3) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (cbrt.f64 im)) 0) (pow.f64 (/.f64 -1 (cbrt.f64 im)) -3) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (cbrt.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (neg.f64 im) 0) (neg.f64 im) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 im 0) (neg.f64 im) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (pow.f64 im -1)) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (pow.f64 im -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 1 (/.f64 1 (/.f64 -1 (cbrt.f64 im))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (pow.f64 im -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 1 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (cbrt.f64 (/.f64 (pow.f64 (pow.f64 im 2) -1) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (cbrt.f64 (/.f64 (pow.f64 (pow.f64 im 2) -1) (/.f64 -1 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) 0) (/.f64 1 (pow.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) -1/3)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) -3)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (+.f64 0 (/.f64 -1 (/.f64 -1 im))) 0) (/.f64 (-.f64 0 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (+.f64 0 (/.f64 -1 (/.f64 -1 im)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1)))) 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 0 (pow.f64 im -1)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 0 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 1 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (/.f64 -1 im))) (/.f64 -1 (pow.f64 im -1)))
(+.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(+.f64 0 (/.f64 -1 (pow.f64 im -1)))
Outputs
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 -1 im)
(neg.f64 im)
(*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))
(/.f64 1 (/.f64 -1 im))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 1 (/.f64 -1 (cbrt.f64 im))))
(/.f64 1 (/.f64 -1 im))
(*.f64 1 (/.f64 -1 (pow.f64 im -1)))
(/.f64 1 (/.f64 -1 im))
(*.f64 (/.f64 -1 (pow.f64 im -1)) 1)
(/.f64 1 (/.f64 -1 im))
(*.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2) -1))
(/.f64 1 (/.f64 -1 im))
(*.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (/.f64 (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2) (/.f64 -1 (cbrt.f64 im))))
(/.f64 1 (/.f64 -1 im))
(*.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)) 2))))
(/.f64 1 (/.f64 -1 im))
(*.f64 (/.f64 -1 (/.f64 -1 im)) -1)
(/.f64 1 (/.f64 -1 im))
(*.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) (/.f64 1 (cbrt.f64 (pow.f64 im -1))))
(/.f64 1 (/.f64 -1 im))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -1))) (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))))
(/.f64 1 (/.f64 -1 im))
(*.f64 (cbrt.f64 (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 -1 im))) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 im))))
(/.f64 1 (/.f64 -1 im))
(*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (cbrt.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (pow.f64 (pow.f64 im 2) -1))))
(/.f64 1 (/.f64 -1 im))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2))
(/.f64 1 (/.f64 -1 im))
(*.f64 -1 (/.f64 -1 (/.f64 -1 im)))
(/.f64 1 (/.f64 -1 im))
(*.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (/.f64 1 (cbrt.f64 im)) -1) 2) 2) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (cbrt.f64 im)) 2) im))))
(-.f64 0 (/.f64 -1 (/.f64 -1 im)))
(/.f64 1 (/.f64 -1 im))
(-.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))
(/.f64 1 (/.f64 -1 im))
(/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (cbrt.f64 im)))
(/.f64 1 (/.f64 -1 im))
(/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))
(/.f64 1 (/.f64 -1 im))
(/.f64 (/.f64 -1 (pow.f64 im -1)) 1)
(/.f64 1 (/.f64 -1 im))
(/.f64 -1 (pow.f64 im -1))
(/.f64 1 (/.f64 -1 im))
(/.f64 1 (/.f64 -1 im))
(/.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) (cbrt.f64 (pow.f64 im -1)))
(/.f64 1 (/.f64 -1 im))
(/.f64 (cbrt.f64 (/.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 -1 (cbrt.f64 im)))) (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2))
(/.f64 1 (/.f64 -1 im))
(/.f64 (cbrt.f64 (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (pow.f64 (pow.f64 im 2) -1))) (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2))
(/.f64 1 (/.f64 -1 im))
(/.f64 (/.f64 -1 (/.f64 -1 im)) -1)
(/.f64 1 (/.f64 -1 im))
(/.f64 (/.f64 1 (cbrt.f64 (pow.f64 im -1))) (/.f64 -1 (cbrt.f64 (pow.f64 im 2))))
(/.f64 1 (/.f64 -1 im))
(/.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1)))) (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2))
(/.f64 1 (/.f64 -1 im))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 (/.f64 -1 (pow.f64 im -1)) (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))))) (neg.f64 (pow.f64 (pow.f64 (/.f64 -1 (cbrt.f64 (cbrt.f64 im))) 2) 2)))
(/.f64 1 (/.f64 -1 im))
(pow.f64 (/.f64 -1 (pow.f64 im -1)) 1)
(/.f64 1 (/.f64 -1 im))
(pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 3)
(/.f64 1 (/.f64 -1 im))
(pow.f64 (/.f64 -1 im) -1)
(/.f64 1 (/.f64 -1 im))
(pow.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) 1/3)
(/.f64 1 (/.f64 -1 im))
(cbrt.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)))
(/.f64 1 (/.f64 -1 im))
(neg.f64 (/.f64 -1 (/.f64 -1 im)))
(/.f64 1 (/.f64 -1 im))
(neg.f64 (-.f64 (/.f64 -1 (/.f64 -1 im)) (/.f64 0 (pow.f64 im -1))))
(/.f64 1 (/.f64 -1 im))
(neg.f64 (-.f64 (/.f64 -1 (/.f64 -1 im)) 0))
(/.f64 1 (/.f64 -1 im))
(if (!=.f64 (/.f64 -1 im) 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 im) 0) (/.f64 1 (/.f64 -1 im)) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 -1 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 -1 0) (/.f64 1 (/.f64 -1 im)) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 1 0) (/.f64 -1 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 1 0) (/.f64 1 (/.f64 -1 im)) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (pow.f64 im 3)) 0) (pow.f64 (/.f64 -1 (pow.f64 im 3)) -1/3) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (/.f64 -1 im) 3) 0) (pow.f64 (pow.f64 (/.f64 -1 im) 3) -1/3) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (cbrt.f64 im)) 0) (pow.f64 (/.f64 -1 (cbrt.f64 im)) -3) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (cbrt.f64 im)) 0) (pow.f64 (/.f64 -1 (cbrt.f64 im)) -3) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (cbrt.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (cbrt.f64 (pow.f64 im 2))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (cbrt.f64 im) 2) 0) (cbrt.f64 (/.f64 (*.f64 im im) (/.f64 -1 im))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (neg.f64 im) 0) (neg.f64 im) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (neg.f64 im) 0) (neg.f64 im) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 im 0) (neg.f64 im) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 im 0) (neg.f64 im) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (pow.f64 im -1)) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (pow.f64 im -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 im)) 0) (/.f64 1 (/.f64 1 (/.f64 1 (/.f64 -1 im)))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 1 (/.f64 1 (/.f64 -1 (cbrt.f64 im))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (cbrt.f64 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (/.f64 1 (/.f64 1 (/.f64 -1 im))))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 1 (/.f64 1 (/.f64 -1 (pow.f64 im -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 1 (/.f64 1 (/.f64 1 (/.f64 -1 im)))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (cbrt.f64 (pow.f64 (pow.f64 im 2) -1))) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 1 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (cbrt.f64 (/.f64 1 (/.f64 -1 (*.f64 im im)))) 0) (/.f64 1 (/.f64 (/.f64 1 (cbrt.f64 im)) (cbrt.f64 (/.f64 1 (/.f64 -1 (*.f64 im im)))))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) (cbrt.f64 (/.f64 (pow.f64 (pow.f64 im 2) -1) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 0) (/.f64 1 (/.f64 (cbrt.f64 (/.f64 (/.f64 -1 (*.f64 im im)) (cbrt.f64 (/.f64 1 (/.f64 -1 (*.f64 im im)))))) (neg.f64 (cbrt.f64 (cbrt.f64 im))))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (cbrt.f64 (/.f64 (pow.f64 (pow.f64 im 2) -1) (/.f64 -1 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (cbrt.f64 (pow.f64 (/.f64 1 (/.f64 (*.f64 im im) (/.f64 -1 im))) -1)) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) 0) (/.f64 1 (pow.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) -1/3)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 3) 0) (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 3) -1/3)) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) -3)) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 0) (/.f64 1 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) -3)) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (+.f64 0 (/.f64 -1 (/.f64 -1 im))) 0) (/.f64 (-.f64 0 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (+.f64 0 (/.f64 -1 (/.f64 -1 im)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1)))) 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 0 (pow.f64 im -1)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (pow.f64 im -1)) 3) (pow.f64 (pow.f64 (pow.f64 im 3) -1) -1)) (+.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (/.f64 -1 im)))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 0 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 0 0) (/.f64 (/.f64 -1 (pow.f64 (pow.f64 im 3) -1)) (+.f64 0 (+.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1) (/.f64 0 (pow.f64 im -1))))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 0 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) 0) (/.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) (/.f64 1 (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (pow.f64 (pow.f64 (/.f64 1 (cbrt.f64 im)) -1) 2) 0) (/.f64 1 (/.f64 (/.f64 1 (cbrt.f64 im)) (cbrt.f64 (/.f64 1 (/.f64 -1 (*.f64 im im)))))) (/.f64 1 (/.f64 -1 im)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 0 (pow.f64 im -1))) (pow.f64 (pow.f64 (pow.f64 im 2) -1) -1)) (/.f64 -1 (/.f64 -1 im))) (/.f64 -1 (pow.f64 im -1)))
(if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im)))
(+.f64 (/.f64 0 (pow.f64 im -1)) (/.f64 -1 (pow.f64 im -1)))
(/.f64 1 (/.f64 -1 im))
(+.f64 0 (/.f64 -1 (pow.f64 im -1)))
(/.f64 1 (/.f64 -1 im))

localize67.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
0.8b
(+.f64 (hypot.f64 re im) re)
7.6b
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
18.6b
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
Compiler

Compiled 124 to 77 computations (37.9% saved)

series65.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
7.0ms
im
@-inf
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
1.0ms
re
@0
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
1.0ms
im
@0
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
1.0ms
re
@-inf
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
1.0ms
re
@inf
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
Compiler

Compiled 4175 to 2765 computations (33.8% saved)

rewrite1.7s (2.2%)

Algorithm
batch-egg-rewrite
Rules
143×egg-rr
69×egg-rr
32×egg-rr
Counts
3 → 244
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
(/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 re re) (/.f64 -1 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re im) (/.f64 -2 im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -2 im) (/.f64 re im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2))) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (pow.f64 im 2)) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) (/.f64 (cbrt.f64 (*.f64 -2 re)) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -2 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) (cbrt.f64 (*.f64 -2 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 im 2)) (*.f64 -2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 re (/.f64 -2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 re) (/.f64 1 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -2 (pow.f64 im 2)) re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (*.f64 0 (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (+.f64 0 (*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0))) (-.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) 0)) (+.f64 0 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 im -1) (/.f64 (*.f64 -2 re) im))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 re (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -2 re) im) (pow.f64 im -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 re (pow.f64 im 2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 0 (/.f64 0 (neg.f64 (pow.f64 im 2)))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 re re) (neg.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 re) (pow.f64 im 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (+.f64 re re)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (+.f64 re re))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 re) (/.f64 (pow.f64 im 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 re (*.f64 (pow.f64 im 2) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (*.f64 -2 re))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -2 re) im) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 re (/.f64 -2 im)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 im -1) (*.f64 -2 re)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (/.f64 re im)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -2 im) re) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re im) -2) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (*.f64 -2 re)) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) -2) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cbrt.f64 (+.f64 re re)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 re re) (pow.f64 im -1))) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (+.f64 re re) im)) im)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))) (cbrt.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 re re) -1)) (neg.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 re re) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (+.f64 re re) (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (*.f64 (+.f64 re re) -1)) (neg.f64 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re re) (cbrt.f64 (pow.f64 im 2))) (neg.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 re re) im) (neg.f64 im))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) (/.f64 0 (neg.f64 (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -2 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 re) (/.f64 (*.f64 (pow.f64 im 2) -1/2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 re) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (*.f64 (pow.f64 im 2) -1/2) (cbrt.f64 re))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 2 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 -2 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 -2 (cbrt.f64 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 re) (/.f64 (pow.f64 im 2) (*.f64 -2 (cbrt.f64 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (cbrt.f64 4) re) 0) (/.f64 (cbrt.f64 -2) (/.f64 (pow.f64 im 2) (*.f64 (cbrt.f64 4) re))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 (cbrt.f64 re) -2) (/.f64 (pow.f64 im 2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (*.f64 -2 re)) 0) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 -2 re)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 4) 0) (/.f64 (*.f64 (cbrt.f64 -2) re) (/.f64 (pow.f64 im 2) (cbrt.f64 4))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) im) 0) (/.f64 (pow.f64 im -1) (/.f64 1 (/.f64 (*.f64 -2 re) im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 re (pow.f64 im 2)) 0) (/.f64 -2 (/.f64 1 (/.f64 re (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -2 im) 0) (/.f64 (/.f64 re im) (pow.f64 (/.f64 -2 im) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1 (pow.f64 im 2)) 0) (/.f64 (+.f64 re re) (/.f64 1 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) 0) (/.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 -2 re) 0) (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -2 (pow.f64 im 2)) 0) (/.f64 re (pow.f64 (/.f64 -2 (pow.f64 im 2)) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) 0) (/.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1 (pow.f64 im 2)) 0) (/.f64 (*.f64 -2 re) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 re im) 0) (/.f64 (/.f64 -2 im) (/.f64 1 (/.f64 re im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 re re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (neg.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (*.f64 0 (+.f64 1 (/.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0)) 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))))) 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1/3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 9) 9)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3/2) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 0 (/.f64 0 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 3)))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 re) (/.f64 -1 (/.f64 -1 (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2))) (/.f64 -1/2 re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (+.f64 re re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1/2 re) (/.f64 -1 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 re) (/.f64 1 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) re)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2))) (*.f64 -2 re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) -1) (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1/2 (/.f64 re (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re -1) (/.f64 -2 (pow.f64 im 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 re -1) (/.f64 (/.f64 1 (pow.f64 im 2)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 re -1) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 0) (pow.f64 (/.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) -1) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0) (pow.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) -3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (pow.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) -1/3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 2) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 0) (pow.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) -1) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (cbrt.f64 (/.f64 1 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (cbrt.f64 (/.f64 1 (*.f64 4 (pow.f64 re 2)))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 2) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 -1/2 re) 0) (/.f64 1 (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1/2 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 re -1) 0) (/.f64 -1/2 (/.f64 (/.f64 1 (pow.f64 im 2)) (pow.f64 re -1))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2) 0) (*.f64 (/.f64 (/.f64 -1/2 re) (/.f64 1 (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 (/.f64 -1/2 re) -1) (neg.f64 (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 im 0) (*.f64 (/.f64 (/.f64 -1/2 re) (pow.f64 im -1)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2) 0) (*.f64 (/.f64 1 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (pow.f64 im 2) -1/2) 0) (*.f64 (pow.f64 re -1) (*.f64 (pow.f64 im 2) -1/2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 im 0) (*.f64 (/.f64 1 (/.f64 (*.f64 -2 re) im)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 im 2) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 (-.f64 0 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (+.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2)))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2)))))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))))))

simplify5.5s (7.1%)

Algorithm
egglog
Counts
316 → 329
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) -1))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 -1 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(-.f64 0 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(/.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 2)
(pow.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)
(pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) 4)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 3)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 3))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) 3))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 (+.f64 re re) (/.f64 -1 (pow.f64 im 2)))
(*.f64 (/.f64 re im) (/.f64 -2 im))
(*.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))
(*.f64 (/.f64 -2 im) (/.f64 re im))
(*.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(*.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(*.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2))) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) 2) -1)))
(*.f64 (/.f64 -1 (pow.f64 im 2)) (+.f64 re re))
(*.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) (/.f64 (cbrt.f64 (*.f64 -2 re)) im))
(*.f64 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -2 (cbrt.f64 (pow.f64 im 2))))
(*.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))
(*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))
(*.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) (cbrt.f64 (*.f64 -2 re)))
(*.f64 (/.f64 1 (pow.f64 im 2)) (*.f64 -2 re))
(*.f64 re (/.f64 -2 (pow.f64 im 2)))
(*.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))
(*.f64 (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))
(*.f64 (*.f64 -2 re) (/.f64 1 (pow.f64 im 2)))
(*.f64 (/.f64 -2 (pow.f64 im 2)) re)
(*.f64 -1 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(*.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (*.f64 0 (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (+.f64 0 (*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0))) (-.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0))
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) 0)) (+.f64 0 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))
(*.f64 (pow.f64 im -1) (/.f64 (*.f64 -2 re) im))
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(*.f64 (/.f64 (*.f64 -2 re) im) (pow.f64 im -1))
(*.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(*.f64 (/.f64 re (pow.f64 im 2)) -2)
(-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))
(-.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (+.f64 re re) (pow.f64 im 2)))
(-.f64 (+.f64 0 (/.f64 0 (neg.f64 (pow.f64 im 2)))) (/.f64 (+.f64 re re) (pow.f64 im 2)))
(-.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)
(/.f64 (+.f64 re re) (neg.f64 (pow.f64 im 2)))
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
(/.f64 (*.f64 (cbrt.f64 (+.f64 re re)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (+.f64 re re))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 re) (/.f64 (pow.f64 im 2) 2))
(/.f64 re (*.f64 (pow.f64 im 2) -1/2))
(/.f64 (*.f64 -2 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 re (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (*.f64 -2 re))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (/.f64 (*.f64 -2 re) im) im)
(/.f64 (*.f64 re (/.f64 -2 im)) im)
(/.f64 (*.f64 (pow.f64 im -1) (*.f64 -2 re)) im)
(/.f64 (*.f64 -2 (/.f64 re im)) im)
(/.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im)) im)
(/.f64 (*.f64 (/.f64 -2 im) re) im)
(/.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) im)
(/.f64 (*.f64 (/.f64 re im) -2) im)
(/.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (*.f64 -2 re)) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (*.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) -2) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (*.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) -1)
(/.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (+.f64 re re)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 (*.f64 (+.f64 re re) (pow.f64 im -1))) im)
(/.f64 (neg.f64 (/.f64 (+.f64 re re) im)) im)
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (neg.f64 (*.f64 (+.f64 re re) -1)) (neg.f64 (pow.f64 im 2)))
(/.f64 (neg.f64 (*.f64 (+.f64 re re) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (neg.f64 (/.f64 (+.f64 re re) (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (-.f64 0 (*.f64 (+.f64 re re) -1)) (neg.f64 (pow.f64 im 2)))
(/.f64 (/.f64 (+.f64 re re) (cbrt.f64 (pow.f64 im 2))) (neg.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(/.f64 (/.f64 (+.f64 re re) im) (neg.f64 im))
(pow.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 1/3)
(pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 3)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3))
(neg.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(neg.f64 (-.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) (/.f64 0 (neg.f64 (pow.f64 im 2)))))
(neg.f64 (-.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0))
(if (!=.f64 -2 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 re) (/.f64 (*.f64 (pow.f64 im 2) -1/2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 re) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (*.f64 (pow.f64 im 2) -1/2) (cbrt.f64 re))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 re 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 2 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 -2 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 -2 (cbrt.f64 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 re) (/.f64 (pow.f64 im 2) (*.f64 -2 (cbrt.f64 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 (cbrt.f64 4) re) 0) (/.f64 (cbrt.f64 -2) (/.f64 (pow.f64 im 2) (*.f64 (cbrt.f64 4) re))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 (cbrt.f64 re) -2) (/.f64 (pow.f64 im 2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (*.f64 -2 re)) 0) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 -2 re)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 4) 0) (/.f64 (*.f64 (cbrt.f64 -2) re) (/.f64 (pow.f64 im 2) (cbrt.f64 4))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) im) 0) (/.f64 (pow.f64 im -1) (/.f64 1 (/.f64 (*.f64 -2 re) im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (pow.f64 im 2)) 0) (/.f64 -2 (/.f64 1 (/.f64 re (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -2 im) 0) (/.f64 (/.f64 re im) (pow.f64 (/.f64 -2 im) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -1 (pow.f64 im 2)) 0) (/.f64 (+.f64 re re) (/.f64 1 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) 0) (/.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 -2 re) 0) (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -2 (pow.f64 im 2)) 0) (/.f64 re (pow.f64 (/.f64 -2 (pow.f64 im 2)) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) 0) (/.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 1 (pow.f64 im 2)) 0) (/.f64 (*.f64 -2 re) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re im) 0) (/.f64 (/.f64 -2 im) (/.f64 1 (/.f64 re im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (neg.f64 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (+.f64 re re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 1 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (neg.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (*.f64 0 (+.f64 1 (/.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0)) 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))))) 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 4) 4)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1/3) 1/3)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1) 1)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 9) 9)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1/2) 1/2)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 2)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3/2) 3/2)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 6) 6)
(+.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(+.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(+.f64 (-.f64 0 (/.f64 0 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(+.f64 0 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(+.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 3)
(*.f64 (/.f64 -1/2 re) (/.f64 -1 (/.f64 -1 (pow.f64 im 2))))
(*.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2))) (/.f64 -1/2 re))
(*.f64 -1 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(*.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) -1)
(*.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(*.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)
(*.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))))
(-.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(-.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))
(/.f64 (neg.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (+.f64 re re))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))
(/.f64 (/.f64 1/2 re) (/.f64 -1 (pow.f64 im 2)))
(/.f64 (/.f64 -1/2 re) (/.f64 1 (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))
(/.f64 (*.f64 -1/2 (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) re)
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))))
(/.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2))) (*.f64 -2 re))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) -1) (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))))
(/.f64 -1 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)
(/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))
(/.f64 (pow.f64 re -1) (/.f64 -2 (pow.f64 im 2)))
(/.f64 (pow.f64 re -1) (/.f64 (/.f64 1 (pow.f64 im 2)) -1/2))
(/.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)))
(/.f64 (*.f64 (pow.f64 re -1) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) -2)
(pow.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) 1/3)
(pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) -1)
(pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)
(pow.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 3)
(cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3))
(neg.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(neg.f64 (-.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))
(neg.f64 (-.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 3))
(if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 0) (pow.f64 (/.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) -1) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0) (pow.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) -3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (pow.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) -1/3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 -1 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 2) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 0) (pow.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) -1) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 1 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (cbrt.f64 (/.f64 1 (*.f64 4 (pow.f64 re 2)))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 2) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 -1/2 re) 0) (/.f64 1 (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 -1/2 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 re -1) 0) (/.f64 -1/2 (/.f64 (/.f64 1 (pow.f64 im 2)) (pow.f64 re -1))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2) 0) (*.f64 (/.f64 (/.f64 -1/2 re) (/.f64 1 (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 (/.f64 -1/2 re) -1) (neg.f64 (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 im 0) (*.f64 (/.f64 (/.f64 -1/2 re) (pow.f64 im -1)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2) 0) (*.f64 (/.f64 1 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (*.f64 (pow.f64 im 2) -1/2) 0) (*.f64 (pow.f64 re -1) (*.f64 (pow.f64 im 2) -1/2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 im 0) (*.f64 (/.f64 1 (/.f64 (*.f64 -2 re) im)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 1 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 im 2) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 (-.f64 0 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (+.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2)))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2)))))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(+.f64 0 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
Outputs
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 -1/2 (/.f64 (pow.f64 im 2) re)) (-.f64 (hypot.f64 re im) (*.f64 -1 re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (+.f64 (hypot.f64 re im) re))))
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 (pow.f64 im -2) re))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 (pow.f64 im -2) re))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 (pow.f64 im -2) re))
(*.f64 -2 (*.f64 re (pow.f64 im -2)))
(*.f64 -2 (*.f64 (pow.f64 im -2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (/.f64 -1 im) 2) re))
(*.f64 -2 (*.f64 (pow.f64 (pow.f64 im -1) 2) re))
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 im 2) re))
(/.f64 (*.f64 -1/2 (pow.f64 im 2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 im -1) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 im -1) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 im -1) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (pow.f64 im -1) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 im) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 im) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 im) -2)) re)
(*.f64 -1/2 (/.f64 (pow.f64 (/.f64 -1 im) -2) re))
(/.f64 (*.f64 -1/2 (pow.f64 (/.f64 -1 im) -2)) re)
(fabs.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) -1) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) (neg.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 1 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2/3)))
(*.f64 -1 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(-.f64 0 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 3) 1/3)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))) 1/2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 2) 1/2)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 1)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) 4)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 3)
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 3))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))) 3))
(sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re))))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 0) (pow.f64 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1) -1) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(if (!=.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))) -1)) (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 (+.f64 re re) (/.f64 -1 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 re im) (/.f64 -2 im))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))
(/.f64 (cbrt.f64 (*.f64 (*.f64 4 (pow.f64 re 2)) (*.f64 -2 re))) (pow.f64 im 2))
(*.f64 (/.f64 -2 im) (/.f64 re im))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2))) (cbrt.f64 (pow.f64 (pow.f64 (pow.f64 im 2) 2) -1)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 -1 (pow.f64 im 2)) (+.f64 re re))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) (/.f64 (cbrt.f64 (*.f64 -2 re)) im))
(/.f64 (cbrt.f64 (*.f64 (*.f64 4 (pow.f64 re 2)) (*.f64 -2 re))) (pow.f64 im 2))
(*.f64 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -2 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 re (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) (cbrt.f64 (*.f64 -2 re)))
(/.f64 (cbrt.f64 (*.f64 (*.f64 4 (pow.f64 re 2)) (*.f64 -2 re))) (pow.f64 im 2))
(*.f64 (/.f64 1 (pow.f64 im 2)) (*.f64 -2 re))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 re (/.f64 -2 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))
(/.f64 (cbrt.f64 (*.f64 (*.f64 4 (pow.f64 re 2)) (*.f64 -2 re))) (pow.f64 im 2))
(*.f64 (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))
(neg.f64 (cbrt.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 3)))
(*.f64 (*.f64 -2 re) (/.f64 1 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 -2 (pow.f64 im 2)) re)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -1 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (+.f64 0 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (*.f64 0 (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (+.f64 0 (*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0))) (-.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (+.f64 0 (-.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) 0)) (+.f64 0 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (pow.f64 im -1) (/.f64 (*.f64 -2 re) im))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 -2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (*.f64 -2 re) im) (pow.f64 im -1))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 re (pow.f64 im 2)) -2)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(-.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(-.f64 (+.f64 0 (/.f64 0 (neg.f64 (pow.f64 im 2)))) (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(-.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (+.f64 re re) (neg.f64 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 -2 re) (pow.f64 im 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (cbrt.f64 (+.f64 re re)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (cbrt.f64 (*.f64 (*.f64 2 re) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (+.f64 re re))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (cbrt.f64 (*.f64 (*.f64 2 re) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 re) (/.f64 (pow.f64 im 2) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 re (*.f64 (pow.f64 im 2) -1/2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 -2 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))
(cbrt.f64 (/.f64 (*.f64 (*.f64 -2 re) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (pow.f64 im 2)))
(/.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 re (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))) (cbrt.f64 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (*.f64 -2 re))) (cbrt.f64 (pow.f64 im 2)))
(cbrt.f64 (/.f64 (*.f64 (*.f64 -2 re) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (pow.f64 im 2)))
(/.f64 (/.f64 (*.f64 -2 re) im) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 re (/.f64 -2 im)) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (pow.f64 im -1) (*.f64 -2 re)) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 -2 (/.f64 re im)) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im)) im)
(/.f64 (cbrt.f64 (*.f64 (*.f64 4 (pow.f64 re 2)) (*.f64 -2 re))) (pow.f64 im 2))
(/.f64 (*.f64 (/.f64 -2 im) re) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) im)
(/.f64 (cbrt.f64 (*.f64 (*.f64 4 (pow.f64 re 2)) (*.f64 -2 re))) (pow.f64 im 2))
(/.f64 (*.f64 (/.f64 re im) -2) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (*.f64 -2 re)) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) -2) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) (*.f64 4 (pow.f64 re 2)))) (cbrt.f64 (pow.f64 (pow.f64 im 2) 2)))
(/.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) -1)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (+.f64 re re)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (cbrt.f64 (*.f64 (*.f64 2 re) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2))) (neg.f64 (cbrt.f64 (pow.f64 im 2))))
(/.f64 (neg.f64 (*.f64 (+.f64 re re) (pow.f64 im -1))) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (neg.f64 (/.f64 (+.f64 re re) im)) im)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 -2 re)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))) (cbrt.f64 (pow.f64 im 2)))
(cbrt.f64 (/.f64 (*.f64 (*.f64 -2 re) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (pow.f64 im 2)))
(/.f64 (neg.f64 (*.f64 (+.f64 re re) -1)) (neg.f64 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (neg.f64 (*.f64 (+.f64 re re) (/.f64 1 (cbrt.f64 (pow.f64 im 2))))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (neg.f64 (/.f64 (+.f64 re re) (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (-.f64 0 (*.f64 (+.f64 re re) -1)) (neg.f64 (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (/.f64 (+.f64 re re) (cbrt.f64 (pow.f64 im 2))) (neg.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(/.f64 (/.f64 (+.f64 re re) im) (neg.f64 im))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(pow.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 1/3)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 3)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(neg.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(neg.f64 (-.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) (/.f64 0 (neg.f64 (pow.f64 im 2)))))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(neg.f64 (-.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(if (!=.f64 -2 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 -2 0) (/.f64 (/.f64 re (/.f64 im -2)) im) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (*.f64 (pow.f64 im 2) (cbrt.f64 (/.f64 1/4 (pow.f64 re 2))))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 0) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) -1) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 re) (/.f64 (*.f64 (pow.f64 im 2) -1/2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (cbrt.f64 re) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 re) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (*.f64 (pow.f64 im 2) -1/2) (cbrt.f64 re))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 re) 0) (/.f64 (cbrt.f64 (pow.f64 re 2)) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) (cbrt.f64 re))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 re 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 re 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (neg.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (*.f64 (pow.f64 im 2) (cbrt.f64 (/.f64 1/4 (pow.f64 re 2))))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 2 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 2 0) (/.f64 (/.f64 re (/.f64 im -2)) im) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (*.f64 -2 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 -2 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (*.f64 -2 (cbrt.f64 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 re) (/.f64 (pow.f64 im 2) (*.f64 -2 (cbrt.f64 (pow.f64 re 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 -2 (cbrt.f64 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 re) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (*.f64 (cbrt.f64 4) re) 0) (/.f64 (cbrt.f64 -2) (/.f64 (pow.f64 im 2) (*.f64 (cbrt.f64 4) re))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 (cbrt.f64 4) re) 0) (/.f64 (cbrt.f64 -2) (/.f64 (pow.f64 im 2) (*.f64 (cbrt.f64 4) re))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 (cbrt.f64 re) -2) (/.f64 (pow.f64 im 2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (pow.f64 re 2)) 0) (/.f64 (*.f64 -2 (cbrt.f64 re)) (/.f64 (pow.f64 im 2) (cbrt.f64 (pow.f64 re 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 (*.f64 -2 re)) 0) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 -2 re)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (*.f64 -2 re)) 0) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (/.f64 (pow.f64 im 2) (cbrt.f64 (*.f64 -2 re)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 4) 0) (/.f64 (*.f64 (cbrt.f64 -2) re) (/.f64 (pow.f64 im 2) (cbrt.f64 4))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 4) 0) (/.f64 (*.f64 (cbrt.f64 -2) re) (/.f64 (pow.f64 im 2) (cbrt.f64 4))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (*.f64 -2 re) im) 0) (/.f64 (pow.f64 im -1) (/.f64 1 (/.f64 (*.f64 -2 re) im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (/.f64 im -2)) 0) (/.f64 (pow.f64 im -1) (pow.f64 (/.f64 re (/.f64 im -2)) -1)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 re (pow.f64 im 2)) 0) (/.f64 -2 (/.f64 1 (/.f64 re (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (pow.f64 im 2)) 0) (/.f64 -2 (/.f64 1 (/.f64 re (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 -2 im) 0) (/.f64 (/.f64 re im) (pow.f64 (/.f64 -2 im) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -2 im) 0) (/.f64 (/.f64 re im) (pow.f64 (/.f64 -2 im) -1)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 -1 (pow.f64 im 2)) 0) (/.f64 (+.f64 re re) (/.f64 1 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -1 (pow.f64 im 2)) 0) (/.f64 re (/.f64 1/2 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) 0) (/.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) 0) (cbrt.f64 (/.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (*.f64 -2 re) 0) (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 -2 re) 0) (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 -2 (pow.f64 im 2)) 0) (/.f64 re (pow.f64 (/.f64 -2 (pow.f64 im 2)) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -2 (pow.f64 im 2)) 0) (/.f64 re (pow.f64 (/.f64 -2 (pow.f64 im 2)) -1)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) 0) (/.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im) 0) (/.f64 (/.f64 (cbrt.f64 (*.f64 -2 re)) im) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) im))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 -2 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 re (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))) 0) (/.f64 (/.f64 2 (cbrt.f64 (pow.f64 im 2))) (/.f64 -1 (/.f64 re (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)) 0) (/.f64 (cbrt.f64 (*.f64 -2 re)) (/.f64 1 (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 1 (pow.f64 im 2)) 0) (/.f64 (*.f64 -2 re) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 1 (pow.f64 im 2)) 0) (/.f64 re (/.f64 1/2 (/.f64 -1 (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) -1)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 -2 (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))) 0) (/.f64 (/.f64 re (cbrt.f64 (pow.f64 im 2))) (pow.f64 (/.f64 -2 (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))) -1)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 re im) 0) (/.f64 (/.f64 -2 im) (/.f64 1 (/.f64 re im))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re im) 0) (/.f64 (/.f64 2 im) (/.f64 -1 (/.f64 re im))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) 0) (/.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))) 0) (/.f64 (/.f64 1 (cbrt.f64 (pow.f64 im 2))) (/.f64 1 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0) (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (cbrt.f64 (/.f64 (/.f64 re (/.f64 im -2)) im)) 0) (cbrt.f64 (/.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (neg.f64 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (neg.f64 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (+.f64 re re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (*.f64 2 re) 0) (/.f64 -2 (/.f64 (pow.f64 im 2) re)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 1 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 1 0) (/.f64 (/.f64 re (/.f64 im -2)) im) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 0 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 0) (*.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 0) (*.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (neg.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 0) (*.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 0 0) (*.f64 0 (+.f64 1 (/.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) 0 (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 0 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0)) 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))))) 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (+.f64 0 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3)) (+.f64 0 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 0))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (+.f64 0 (*.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 3) (pow.f64 (/.f64 (+.f64 re re) (pow.f64 im 2)) 3)) (+.f64 (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (neg.f64 (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) (*.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (/.f64 (/.f64 re (/.f64 im -2)) im))
(+.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 4) 4)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1/3) 1/3)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1) 1)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 9) 9)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 1/2) 1/2)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2) 2)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3/2) 3/2)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 6) 6)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) 0) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 0 (neg.f64 (pow.f64 im 2))) (/.f64 0 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 0 (/.f64 0 (pow.f64 im 2))) (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 0 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(+.f64 (-.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 3)
(/.f64 (/.f64 re (/.f64 im -2)) im)
(*.f64 (/.f64 -1/2 re) (/.f64 -1 (/.f64 -1 (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2))) (/.f64 -1/2 re))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 -1 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) -1)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(-.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(-.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))))
(cbrt.f64 (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (/.f64 (/.f64 re (/.f64 im -2)) im)))
(/.f64 (neg.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (+.f64 re re))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2))))
(cbrt.f64 (/.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)))
(/.f64 (/.f64 1/2 re) (/.f64 -1 (pow.f64 im 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 -1/2 re) (/.f64 1 (pow.f64 im 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))
(/.f64 (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 1 (pow.f64 im 2))) (cbrt.f64 (*.f64 4 (pow.f64 re 2))))
(/.f64 (*.f64 -1/2 (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) re)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))))
(neg.f64 (cbrt.f64 (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (/.f64 re (*.f64 (pow.f64 im 2) 1/2)))))
(/.f64 (/.f64 -1 (/.f64 -1 (pow.f64 im 2))) (*.f64 -2 re))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) -1) (cbrt.f64 (/.f64 (+.f64 re re) (pow.f64 im 2))))
(neg.f64 (cbrt.f64 (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (/.f64 re (*.f64 (pow.f64 im 2) 1/2)))))
(/.f64 -1 (/.f64 (+.f64 re re) (pow.f64 im 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2)))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (cbrt.f64 (*.f64 4 (pow.f64 re 2))) (pow.f64 im 2)))
(/.f64 (pow.f64 re -1) (/.f64 -2 (pow.f64 im 2)))
(/.f64 (pow.f64 re -1) (/.f64 (/.f64 1 (pow.f64 im 2)) -1/2))
(*.f64 (pow.f64 re -1) (/.f64 1/2 (/.f64 -1 (pow.f64 im 2))))
(/.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)))
(cbrt.f64 (/.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)))
(/.f64 (*.f64 (pow.f64 re -1) (/.f64 -1 (/.f64 -1 (pow.f64 im 2)))) -2)
(*.f64 (pow.f64 re -1) (/.f64 1/2 (/.f64 -1 (pow.f64 im 2))))
(pow.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) 1/3)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) -1)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 1)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(pow.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 3)
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(neg.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(neg.f64 (-.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(neg.f64 (-.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(neg.f64 (pow.f64 (neg.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 3))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 0) (pow.f64 (/.f64 1 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) -1) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 1 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) -1)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) 0) (pow.f64 (cbrt.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) -3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 (/.f64 re (/.f64 im -2)) im)) 0) (pow.f64 (cbrt.f64 (/.f64 (/.f64 re (/.f64 im -2)) im)) -3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) 0) (pow.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 3) -1/3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) 0) (pow.f64 (pow.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 3) -1/3) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 -1 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 2) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))) 0) (/.f64 (cbrt.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 (cbrt.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2)) (cbrt.f64 (cbrt.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 0) (pow.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 2)) (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))) -1) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 1 (cbrt.f64 (/.f64 (pow.f64 (/.f64 re (*.f64 (pow.f64 im 2) 1/2)) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 1 (*.f64 4 (pow.f64 re 2)))) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (cbrt.f64 (/.f64 1 (*.f64 4 (pow.f64 re 2)))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (/.f64 1/4 (pow.f64 re 2))) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (cbrt.f64 (/.f64 1/4 (pow.f64 re 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 2) 0) (/.f64 (cbrt.f64 (/.f64 -1/2 re)) (/.f64 (/.f64 1 (pow.f64 im 2)) (pow.f64 (cbrt.f64 (/.f64 -1/2 re)) 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 -1/2 re) 0) (/.f64 1 (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 -1/2 re))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 -1/2 re) 0) (/.f64 -1 (/.f64 (/.f64 1 (pow.f64 im 2)) (/.f64 1/2 re))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 -1/2 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 re -1) 0) (/.f64 -1/2 (/.f64 (/.f64 1 (pow.f64 im 2)) (pow.f64 re -1))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 re -1) 0) (/.f64 -1/2 (/.f64 1 (*.f64 (pow.f64 re -1) (pow.f64 im 2)))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2) 0) (*.f64 (/.f64 (/.f64 -1/2 re) (/.f64 1 (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 im 2) 2)) 0) (/.f64 (*.f64 (/.f64 -1/2 re) (cbrt.f64 (pow.f64 (pow.f64 im 2) 2))) (/.f64 1 (cbrt.f64 (pow.f64 im 2)))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 (/.f64 -1/2 re) -1) (neg.f64 (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (neg.f64 (pow.f64 im 2)) 0) (*.f64 (/.f64 -1/2 re) (pow.f64 im 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 im 0) (*.f64 (/.f64 (/.f64 -1/2 re) (pow.f64 im -1)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 im 0) (*.f64 (/.f64 -1/2 (*.f64 (pow.f64 im -1) re)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2) 0) (*.f64 (/.f64 1 (/.f64 (*.f64 -2 re) (cbrt.f64 (pow.f64 im 2)))) (pow.f64 (cbrt.f64 (pow.f64 im 2)) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (cbrt.f64 (pow.f64 (pow.f64 im 2) 2)) 0) (/.f64 (cbrt.f64 (pow.f64 (pow.f64 im 2) 2)) (/.f64 re (/.f64 (cbrt.f64 (pow.f64 im 2)) -2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (*.f64 (pow.f64 im 2) -1/2) 0) (*.f64 (pow.f64 re -1) (*.f64 (pow.f64 im 2) -1/2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (*.f64 -1/2 (pow.f64 im 2)) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 im 0) (*.f64 (/.f64 1 (/.f64 (*.f64 -2 re) im)) im) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 im 0) (/.f64 im (/.f64 re (/.f64 im -2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 1 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 (*.f64 -2 re) (pow.f64 im 2)) 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 (/.f64 re (/.f64 im -2)) im) 0) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 im 2) 0) (/.f64 (*.f64 -1/2 (pow.f64 im 2)) re) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 (-.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2)))) 0) (/.f64 (-.f64 0 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (+.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2)))))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2)))))) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 0) (/.f64 (-.f64 (pow.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) 3) (pow.f64 (/.f64 1/2 (/.f64 re (pow.f64 im 2))) 3)) (+.f64 (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2)))) (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (+.f64 0 (+.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2) (*.f64 0 (/.f64 1/2 (/.f64 re (pow.f64 im 2))))))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(if (!=.f64 0 0) (/.f64 (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 3) (pow.f64 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))) 2)) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(+.f64 (/.f64 0 (/.f64 (+.f64 re re) (pow.f64 im 2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))
(+.f64 0 (/.f64 -1/2 (/.f64 re (pow.f64 im 2))))
(/.f64 -1/2 (/.f64 re (pow.f64 im 2)))

localize48.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (hypot.f64 re im))
0.1b
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
16.5b
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
Compiler

Compiled 64 to 19 computations (70.3% saved)

series174.0ms (0.2%)

Counts
2 → 18
Calls

12 calls:

TimeVariablePointExpression
9.0ms
re
@0
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
7.0ms
im
@0
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
1.0ms
im
@0
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
1.0ms
im
@inf
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
1.0ms
re
@inf
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
Compiler

Compiled 14425 to 9085 computations (37% saved)

rewrite1.7s (2.2%)

Algorithm
batch-egg-rewrite
Rules
45×egg-rr
33×egg-rr
Counts
2 → 78
Calls
Call 1
Inputs
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) (cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (-.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (sqrt.f64 (fabs.f64 re)))) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2/3) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (fabs.f64 re))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 re 1 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 1 re)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 0) (*.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) (+.f64 1 (/.f64 (/.f64 re (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 re 0) (*.f64 re (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) re)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 0) (/.f64 1 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 2 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) (*.f64 1/2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1/2) (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) -1/2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 1 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 -1 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 2 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1/2))))))

simplify2.9s (3.8%)

Algorithm
egglog
Counts
96 → 128
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))
(+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (*.f64 (pow.f64 re 4) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))
re
re
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (*.f64 (pow.f64 im 6) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))))
(sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))) 2))) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) 2)) (*.f64 1/2 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))) 2))) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))))))
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)))))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 1/4 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) 2)) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) 2) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))))))))
(*.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) (cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
(*.f64 (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1) -1)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (-.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))
(*.f64 (+.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 re)))
(*.f64 1 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)
(*.f64 (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 2)
(/.f64 (neg.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) -1)
(/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (sqrt.f64 (fabs.f64 re)))) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2/3) re)
(fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) re)
(fma.f64 (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) re)
(fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 1 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 1 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 re 1 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 1 re)
(pow.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) 3)
(pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)
(cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 3))
(neg.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1))
(neg.f64 (*.f64 -1 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
(if (!=.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 0) (*.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) (+.f64 1 (/.f64 (/.f64 re (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 re 0) (*.f64 re (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) re)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 0) (/.f64 1 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 1 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 -1 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 2 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(+.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)
(+.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(+.f64 (*.f64 1/2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) (*.f64 1/2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
(+.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1/2) (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1/2))
(fabs.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1) -1)
(*.f64 1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)
(*.f64 (/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 2)
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -1)
(/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 3) 1/3)
(pow.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 1/2)
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 1/2)
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))) 4)
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 2)
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 3)
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 3))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(if (!=.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) -1/2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 2 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1/2))
Outputs
(*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))
(*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (fabs.f64 im)))
(+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (fabs.f64 im)) re)
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))
(fma.f64 1/4 (/.f64 (*.f64 (*.f64 re re) (sqrt.f64 (fabs.f64 re))) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (fabs.f64 im)) re))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 re 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 im 2))) 2) (sqrt.f64 (pow.f64 im 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2)))) 2)) (*.f64 (pow.f64 re 4) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 im 2))))) (+.f64 re (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))
(fma.f64 1/4 (/.f64 (*.f64 (*.f64 re re) (sqrt.f64 (fabs.f64 re))) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) (fma.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 im)) 2)) (fabs.f64 im)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) 2)) (*.f64 (sqrt.f64 (fabs.f64 re)) (pow.f64 re 4))) (sqrt.f64 (fabs.f64 im))) (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (fabs.f64 im)) re)))
re
re
(+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)
(+.f64 (fabs.f64 re) re)
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))
(fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 im im)) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) (+.f64 (fabs.f64 re) re))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 (pow.f64 im 4) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (fabs.f64 re))) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 im im)) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) (+.f64 (fabs.f64 re) re)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (*.f64 (pow.f64 im 6) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 im 4) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))) (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))))
(+.f64 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (fabs.f64 re)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (pow.f64 (fabs.f64 re) 2))) (*.f64 (sqrt.f64 (fabs.f64 re)) (pow.f64 im 6)))) (*.f64 1/2 (*.f64 (*.f64 (pow.f64 im 4) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))))) (sqrt.f64 (fabs.f64 re))) (fma.f64 1/4 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 im im)) (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) (+.f64 (fabs.f64 re) re)))
(sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))
(sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))))
(+.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re)))) (/.f64 re (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))) 2))) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))))
(+.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re)))) (/.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 re re) (-.f64 (/.f64 (*.f64 1/2 (sqrt.f64 (fabs.f64 re))) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))) 2)))) re) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))))
(+.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))) 2) (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) 2)) (*.f64 1/2 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))) 2) (*.f64 (sqrt.f64 (pow.f64 im 2)) (sqrt.f64 (sqrt.f64 (pow.f64 im 2)))))))) (pow.f64 re 3)) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 re 2) (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (pow.f64 im 2))))) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))) 2))) (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re))))))) (/.f64 re (sqrt.f64 (*.f64 2 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) (sqrt.f64 (fabs.f64 re)))))))))
(+.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re)))) (fma.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))) 2) (pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re)))) 2)) (/.f64 (*.f64 1/2 (sqrt.f64 (fabs.f64 re))) (*.f64 (pow.f64 (sqrt.f64 (fabs.f64 im)) 3) (pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re)))) 2)))) (pow.f64 re 3)) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))) (/.f64 (+.f64 (*.f64 1/2 (*.f64 (*.f64 re re) (-.f64 (/.f64 (*.f64 1/2 (sqrt.f64 (fabs.f64 re))) (pow.f64 (sqrt.f64 (fabs.f64 im)) 3)) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re))))) 2)))) re) (sqrt.f64 (*.f64 (sqrt.f64 (*.f64 4 (fabs.f64 im))) (sqrt.f64 (fabs.f64 re)))))))
(sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)))
(sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))))
(fma.f64 1/4 (/.f64 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 im im)) (fabs.f64 re)) (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re)))))))
(+.f64 (fma.f64 1/4 (/.f64 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 im im)) (fabs.f64 re)) (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (/.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))) (pow.f64 (/.f64 (*.f64 1/4 (sqrt.f64 (fabs.f64 re))) (*.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (fabs.f64 re))) 2)) (pow.f64 im 4))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))))
(+.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 im 2) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (pow.f64 re 2)) 2)))) (*.f64 1/4 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) 2))))) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (*.f64 1/4 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) 2)) (sqrt.f64 (fabs.f64 re))) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) 2) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))))))) (pow.f64 im 6)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (pow.f64 (/.f64 1/2 (sqrt.f64 (pow.f64 re 2))) 2) (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (/.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 re 2)) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))) 2)) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2)))) (pow.f64 (*.f64 1/4 (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (sqrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))) (sqrt.f64 (sqrt.f64 (pow.f64 re 2))))))) 2)) (pow.f64 im 4)) (sqrt.f64 (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (sqrt.f64 (pow.f64 re 2))) (sqrt.f64 (fabs.f64 re))) re))))))))
(+.f64 (fma.f64 1/4 (/.f64 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 im im)) (fabs.f64 re)) (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (*.f64 1/2 (/.f64 (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (*.f64 1/4 (/.f64 (-.f64 (/.f64 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2) (fabs.f64 re)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (pow.f64 (fabs.f64 re) 2))) (sqrt.f64 (fabs.f64 re))) (sqrt.f64 (fabs.f64 re))) (*.f64 1/4 (*.f64 (/.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))) (pow.f64 (/.f64 (*.f64 1/4 (sqrt.f64 (fabs.f64 re))) (*.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (fabs.f64 re))) 2)) (fabs.f64 re)) (/.f64 (sqrt.f64 (fabs.f64 re)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))) 2) (sqrt.f64 (fabs.f64 re))))))) (pow.f64 im 6)) (*.f64 (-.f64 (/.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (-.f64 (/.f64 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (fabs.f64 re)) 2)) (fabs.f64 re)) (pow.f64 (/.f64 1/4 (pow.f64 (sqrt.f64 (fabs.f64 re)) 3)) 2))) (sqrt.f64 (fabs.f64 re))) (pow.f64 (/.f64 (*.f64 1/4 (sqrt.f64 (fabs.f64 re))) (*.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re)))) (fabs.f64 re))) 2)) (pow.f64 im 4))) (sqrt.f64 (*.f64 2 (+.f64 (fabs.f64 re) re))))))
(*.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) (cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(*.f64 (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1) -1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(*.f64 (+.f64 (cbrt.f64 (pow.f64 re 2)) (-.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (*.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))) (+.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))))
(*.f64 (-.f64 (fma.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 (fabs.f64 re)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) re))) (fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (fabs.f64 re))) (cbrt.f64 re)))
(*.f64 (+.f64 (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 (cbrt.f64 (pow.f64 re 2)) (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 re)))) (+.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 re)))
(*.f64 (-.f64 (fma.f64 (cbrt.f64 (hypot.f64 re im)) (cbrt.f64 (fabs.f64 re)) (cbrt.f64 (*.f64 re re))) (cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) re))) (fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (cbrt.f64 (sqrt.f64 (fabs.f64 re))) (cbrt.f64 re)))
(*.f64 1 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(*.f64 (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 2)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(/.f64 (neg.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) -1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (cbrt.f64 (sqrt.f64 (fabs.f64 re)))) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2/3) re)
(fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 (sqrt.f64 (*.f64 (hypot.f64 re im) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (sqrt.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (hypot.f64 re im))) (sqrt.f64 (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (sqrt.f64 (hypot.f64 re im)))) re)
(fma.f64 (cbrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (cbrt.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) re)
(fma.f64 (cbrt.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)))) (cbrt.f64 (*.f64 (fabs.f64 re) (hypot.f64 re im))) re)
(fma.f64 (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) (sqrt.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (cbrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 re im))) (*.f64 (sqrt.f64 (fabs.f64 re)) (cbrt.f64 (hypot.f64 re im))) re)
(fma.f64 (cbrt.f64 (pow.f64 re 2)) (cbrt.f64 re) (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (cbrt.f64 (*.f64 re re)) (cbrt.f64 re) (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (pow.f64 re 2)) (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (cbrt.f64 re) (cbrt.f64 (*.f64 re re)) (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))))
(fma.f64 1 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 1 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 re 1 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fma.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 1 re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(pow.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 3) 1/3)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(pow.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) 3)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(cbrt.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 3))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(neg.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(neg.f64 (*.f64 -1 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(if (!=.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) 3) (pow.f64 re 3)) (fma.f64 (hypot.f64 re im) (fabs.f64 re) (*.f64 re (-.f64 re (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 0) (*.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) (+.f64 1 (/.f64 (/.f64 re (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) 0) (*.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) (-.f64 (/.f64 (/.f64 re (sqrt.f64 (hypot.f64 re im))) (sqrt.f64 (fabs.f64 re))) -1)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (hypot.f64 re im) (fabs.f64 re) (*.f64 re (-.f64 re (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)))))) 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) 3) (pow.f64 re 3)) (fma.f64 (hypot.f64 re im) (fabs.f64 re) (*.f64 re (-.f64 re (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) 3) (pow.f64 re 3)) (-.f64 (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2)) (*.f64 re (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 re 0) (/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))) 3) (pow.f64 re 3)) (fma.f64 (hypot.f64 re im) (fabs.f64 re) (*.f64 re (-.f64 re (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im))))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)))) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (-.f64 re (*.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)))) 0) (/.f64 (fma.f64 (fabs.f64 re) (hypot.f64 re im) (neg.f64 (*.f64 re re))) (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 re 0) (*.f64 re (/.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) re)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 re 0) (/.f64 (*.f64 re (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) 0) (/.f64 (-.f64 (pow.f64 re 2) (*.f64 (hypot.f64 re im) (pow.f64 (sqrt.f64 (fabs.f64 re)) 2))) (-.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re)) 0) (/.f64 (fma.f64 (fabs.f64 re) (hypot.f64 re im) (neg.f64 (*.f64 re re))) (fma.f64 (sqrt.f64 (fabs.f64 re)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 0) (/.f64 1 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1)) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 0) (pow.f64 (pow.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) -1) -1) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 1 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 -1 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(if (!=.f64 2 0) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))
(+.f64 (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))) re)
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(+.f64 re (*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(+.f64 (*.f64 1/2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)) (*.f64 1/2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(+.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1/2) (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 1/2))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re)
(fabs.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3) (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)))
(*.f64 (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)) (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (fabs.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2/3)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1) -1)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(*.f64 1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 2)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -1)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(/.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 3) 1/3)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 1/2)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 1/2)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))) 4)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 2)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 3)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1)
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 3))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(neg.f64 (*.f64 -1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(if (!=.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) 0) (/.f64 1 (pow.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2) -1/2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) 0) (/.f64 1 (pow.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 2) -1/2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 0) (/.f64 1 (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (sqrt.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) 0) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -1) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 0) (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) -1)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 0) (pow.f64 (/.f64 1 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) -1) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 1 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 -1 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(if (!=.f64 2 0) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))) (*.f64 1/2 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2)) 1/2))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re) 2))

eval1.4s (1.9%)

Compiler

Compiled 42017 to 28216 computations (32.8% saved)

prune720.0ms (0.9%)

Pruning

19 alts after pruning (10 fresh and 9 done)

PrunedKeptTotal
New100271009
Fresh033
Picked101
Done3912
Total1006191025
Error
6.8b
Counts
1025 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
57.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im))) (+.f64 (hypot.f64 re im) re)))))
53.0b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (if (!=.f64 im 0) (/.f64 im (/.f64 re (/.f64 im -2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (+.f64 (hypot.f64 re im) re)))))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 3) (+.f64 (hypot.f64 re im) re)))))
53.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (if (!=.f64 2 0) (/.f64 (/.f64 re (/.f64 im -2)) im) (/.f64 (/.f64 re (/.f64 im -2)) im))) (+.f64 (hypot.f64 re im) re)))))
53.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 (/.f64 -2 im) re) im)) (+.f64 (hypot.f64 re im) re)))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (/.f64 (*.f64 -1/2 (*.f64 im im)) re)))))
46.9b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (/.f64 (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2) (/.f64 -1 (cbrt.f64 im)))) (+.f64 (hypot.f64 re im) re)))))
45.5b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
54.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im))))
44.3b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
14.4b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
46.8b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
46.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
47.2b
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
59.6b
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
49.1b
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Compiler

Compiled 382 to 293 computations (23.3% saved)

regimes258.0ms (0.3%)

Counts
29 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (/.f64 (*.f64 -1/2 (*.f64 im im)) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 (/.f64 -2 im) re) im)) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (if (!=.f64 2 0) (/.f64 (/.f64 re (/.f64 im -2)) im) (/.f64 (/.f64 re (/.f64 im -2)) im))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (if (!=.f64 im 0) (/.f64 im (/.f64 re (/.f64 im -2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 im))) 3) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 (+.f64 (hypot.f64 re im) re) 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (if (!=.f64 (/.f64 -1 (/.f64 -1 im)) 0) (/.f64 -1 (/.f64 (pow.f64 (/.f64 1 (/.f64 -1 im)) 2) (pow.f64 im 3))) (/.f64 1 (/.f64 -1 im))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (pow.f64 (sqrt.f64 (sqrt.f64 (pow.f64 im 2))) 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (fabs.f64 re)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (fma.f64 (pow.f64 (hypot.f64 re im) 3/4) (sqrt.f64 (sqrt.f64 (hypot.f64 re im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (*.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) (/.f64 (pow.f64 (pow.f64 (/.f64 1 (/.f64 -1 (cbrt.f64 (cbrt.f64 im)))) 2) 2) (/.f64 -1 (cbrt.f64 im)))) (+.f64 (hypot.f64 re im) re)))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (if (!=.f64 im 0) (/.f64 im (/.f64 re (/.f64 im -2))) (/.f64 -1/2 (/.f64 re (pow.f64 im 2)))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
Calls

7 calls:

65.0ms
re
41.0ms
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
35.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
32.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
20.0ms
im
Results
ErrorSegmentsBranch
10.6b2re
14.4b1im
11.4b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
11.4b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
12.2b2(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
12.2b2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
14.4b1(*.f64 im im)
Compiler

Compiled 593 to 386 computations (34.9% saved)

bsearch77.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
76.0ms
-1.4116606559455773e+102
-8.007131844241587e+97
Results
23.0ms27×body4096valid
19.0ms30×body2048valid
10.0ms22×body1024valid
8.0ms40×body256valid
3.0msbody512valid
Compiler

Compiled 406 to 296 computations (27.1% saved)

regimes191.0ms (0.2%)

Counts
20 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (/.f64 (*.f64 -1/2 (*.f64 im im)) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 (/.f64 -2 im) re) im)) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (if (!=.f64 2 0) (/.f64 (/.f64 re (/.f64 im -2)) im) (/.f64 (/.f64 re (/.f64 im -2)) im))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 (fma.f64 (/.f64 (*.f64 -1/2 re) im) re re) im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (+.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 -2 re) (pow.f64 im 2))) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 re 0) (*.f64 re (+.f64 1 (/.f64 (hypot.f64 re im) re))) (+.f64 (hypot.f64 re im) re)))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 (*.f64 (/.f64 -2 im) re) im)) (+.f64 (hypot.f64 re im) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
Calls

7 calls:

46.0ms
re
34.0ms
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
29.0ms
(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
24.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
21.0ms
(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
ErrorSegmentsBranch
10.7b2re
14.4b1im
11.5b2(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
11.5b2(sqrt.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
12.4b2(*.f64 2 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
12.4b2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
14.4b1(*.f64 im im)
Compiler

Compiled 374 to 247 computations (34% saved)

bsearch77.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
76.0ms
-1.4116606559455773e+102
-8.007131844241587e+97
Results
24.0ms36×body2048valid
20.0ms45×body256valid
16.0ms21×body4096valid
9.0ms18×body1024valid
3.0msbody512valid
Compiler

Compiled 334 to 248 computations (25.7% saved)

regimes82.0ms (0.1%)

Counts
13 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (/.f64 (*.f64 -1/2 (*.f64 im im)) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (+.f64 (hypot.f64 re im) re)))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (hypot.f64 re im) re))))
Calls

3 calls:

41.0ms
re
32.0ms
im
5.0ms
(*.f64 im im)
Results
ErrorSegmentsBranch
11.7b2re
14.4b1im
14.4b1(*.f64 im im)
Compiler

Compiled 160 to 116 computations (27.5% saved)

bsearch74.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
74.0ms
-1.4116606559455773e+102
-8.007131844241587e+97
Results
29.0ms21×body4096valid
14.0ms19×body2048valid
13.0ms57×body256valid
10.0ms18×body1024valid
5.0ms13×body512valid
Compiler

Compiled 246 to 192 computations (22% saved)

regimes240.0ms (0.3%)

Counts
11 → 7
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (if (!=.f64 im 0) (/.f64 1 (/.f64 1 (*.f64 -1 im))) (/.f64 (*.f64 -1/2 (*.f64 im im)) re)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (*.f64 (/.f64 re im) re)) (-.f64 re im)))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 re re) im)) (-.f64 re im)))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (/.f64 (*.f64 -1/2 (*.f64 im im)) re))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
Calls

3 calls:

86.0ms
im
77.0ms
(*.f64 im im)
70.0ms
re
Results
ErrorSegmentsBranch
27.2b5re
23.9b7im
33.8b9(*.f64 im im)
Compiler

Compiled 129 to 95 computations (26.4% saved)

bsearch331.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
99.0ms
3.725802397473687e-200
3.18332384066899e-189
60.0ms
-5.095734677653279e-99
-1.798847068497631e-101
33.0ms
-2.918870506441965e-15
-1.4544778386411605e-19
54.0ms
-128217041008.40486
-1992414257.438088
45.0ms
-5.3150944496268235e+69
-2.472968898628295e+65
37.0ms
-7.392326809696193e+105
-7.113157672091083e+102
Results
139.0ms560×body256valid
58.0ms80×body2048valid
46.0ms73×body1024valid
38.0ms45×body4096valid
8.0ms26×body512valid
Compiler

Compiled 1132 to 963 computations (14.9% saved)

regimes68.0ms (0.1%)

Counts
7 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 (-.f64 re im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
Calls

2 calls:

34.0ms
re
22.0ms
im
Results
ErrorSegmentsBranch
30.8b7re
25.0b5im
Compiler

Compiled 57 to 46 computations (19.3% saved)

bsearch165.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
54.0ms
3.725802397473687e-200
3.18332384066899e-189
29.0ms
-5.095734677653279e-99
-1.798847068497631e-101
61.0ms
-2.918870506441965e-15
-1.4544778386411605e-19
20.0ms
-128217041008.40486
-1992414257.438088
Results
88.0ms348×body256valid
27.0ms57×body4096valid
26.0ms69×body2048valid
11.0ms38×body1024valid
3.0ms16×body512valid
Compiler

Compiled 716 to 627 computations (12.4% saved)

regimes92.0ms (0.1%)

Counts
6 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (+.f64 re im))))
Calls

2 calls:

63.0ms
re
28.0ms
im
Results
ErrorSegmentsBranch
31.2b7re
25.2b5im
Compiler

Compiled 49 to 40 computations (18.4% saved)

bsearch188.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
73.0ms
3.725802397473687e-200
3.18332384066899e-189
60.0ms
-5.095734677653279e-99
-1.798847068497631e-101
37.0ms
-2.918870506441965e-15
-1.4544778386411605e-19
18.0ms
-2.2372674340729468e+20
-18610640553601925000.0
Results
84.0ms358×body256valid
46.0ms51×body4096valid
29.0ms58×body2048valid
12.0ms30×body1024valid
4.0ms15×body512valid
Compiler

Compiled 682 to 602 computations (11.7% saved)

regimes128.0ms (0.2%)

Counts
5 → 5
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (*.f64 re 2))))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Calls

2 calls:

68.0ms
re
57.0ms
im
Results
ErrorSegmentsBranch
31.4b7re
25.6b5im
Compiler

Compiled 41 to 34 computations (17.1% saved)

bsearch226.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
68.0ms
3.725802397473687e-200
3.18332384066899e-189
72.0ms
-5.095734677653279e-99
-1.798847068497631e-101
54.0ms
-2.918870506441965e-15
-1.4544778386411605e-19
31.0ms
-2.2372674340729468e+20
-18610640553601925000.0
Results
81.0ms349×body256valid
74.0ms66×body2048valid
32.0ms41×body4096valid
19.0ms39×body1024valid
6.0ms17×body512valid
Compiler

Compiled 662 to 592 computations (10.6% saved)

regimes85.0ms (0.1%)

Counts
4 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 (neg.f64 im))))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 im -2)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Calls

2 calls:

49.0ms
re
34.0ms
im
Results
ErrorSegmentsBranch
40.9b7re
31.7b2im
Compiler

Compiled 33 to 27 computations (18.2% saved)

bsearch73.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
73.0ms
-1.2165390293041748e-303
4.295432538940567e-304
Results
26.0ms27×body4096valid
22.0ms21×body2048valid
16.0ms84×body256valid
3.0msbody1024valid
2.0msbody512valid
Compiler

Compiled 184 to 160 computations (13% saved)

regimes25.0ms (0%)

Accuracy

Total -16.6b remaining (-35.8%)

Threshold costs -16.6b (-35.8%)

Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
Outputs
(*.f64 1/2 (sqrt.f64 (*.f64 2 re)))
(*.f64 1/2 (sqrt.f64 (*.f64 2 im)))
Calls

2 calls:

13.0ms
re
10.0ms
im
Results
ErrorSegmentsBranch
47.7b2re
46.4b2im
Compiler

Compiled 20 to 16 computations (20% saved)

bsearch57.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
57.0ms
2.7186934398565277e-273
1.667524339015819e-272
Results
33.0ms26×body4096valid
9.0ms47×body256valid
8.0ms12×body2048valid
2.0msbody1024valid
2.0msbody512valid
Compiler

Compiled 130 to 112 computations (13.8% saved)

simplify14.0ms (0%)

Stop Event
fuel
Compiler

Compiled 405 to 313 computations (22.7% saved)

soundness0.0ms (0%)

end397.0ms (0.5%)

Compiler

Compiled 387 to 287 computations (25.8% saved)

Profiling

Loading profile data...