Details

Time bar (total: 3.0s)

analyze417.0ms (13.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
6.3%6.2%93.6%0.2%0%0%0%9
9.4%9.4%90.4%0.2%0%0%0%10
14.1%14%85.8%0.2%0%0%0%11
19.6%18.7%76.8%0.2%4.3%0%0%12
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample1.0s (34.2%)

Results
830.0ms8256×body256valid
197.0ms1998×body256infinite
Bogosity

preprocess86.0ms (2.8%)

Algorithm
egg-herbie
Rules
2614×rational.json-simplify-41
2134×rational.json-simplify-51
2000×rational.json-simplify-14
1760×rational.json-simplify-21
940×rational.json-simplify-35
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023133
142133
286133
3166133
4411133
51033133
62190133
73917133
84197133
94312133
104312133
115194133
044
144
Stop Event
unsound
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
0
3
1
Call 2
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.im y.re) (*.f64 x.im x.re))
(-.f64 (*.f64 x.re x.im) (*.f64 y.re y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.im y.re) (*.f64 x.im x.re))
(-.f64 (*.f64 y.re y.im) (*.f64 x.re x.im))
(-.f64 (*.f64 x.re x.im) (*.f64 y.re y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
Symmetry

(sort x.re y.re)

(sort x.im y.im)

Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify137.0ms (4.5%)

Algorithm
egg-herbie
Rules
5552×rational.json-simplify-41
3046×rational.json-simplify-51
1588×rational.json-simplify-13
888×rational.json-simplify-35
678×rational.json-simplify-39
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
11419
22419
34019
49119
521719
659919
7133919
8389019
9554019
10566219
11567619
12567619
13702019
14702019
15702019
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

eval0.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 11 to 7 computations (36.4% saved)

localize7.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 21 to 7 computations (66.7% saved)

series3.0ms (0.1%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
x.re
@0
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0ms
x.im
@0
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0ms
x.re
@-inf
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0ms
x.im
@-inf
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0ms
x.re
@inf
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

rewrite79.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
1620×rational.json-simplify-55
1016×rational.json-simplify-11
926×rational.json-simplify-39
912×rational.json-simplify-14
614×rational.json-simplify-21
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
15219
217719
397919
4688019
Stop Event
node limit
Counts
1 → 139
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 0 (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 0 (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 x.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 0 (-.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 0 (-.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (-.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 0 (-.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 0 (-.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re (-.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 x.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (-.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 y.re (neg.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (-.f64 0 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im y.im) (-.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 y.re (-.f64 (neg.f64 x.re) x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 0 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re (+.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (neg.f64 x.re)) (*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 0 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 x.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (+.f64 0 (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (*.f64 y.re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (-.f64 0 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 x.re (+.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (-.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))) (-.f64 0 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (/.f64 1/2 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))

simplify94.0ms (3.1%)

Algorithm
egg-herbie
Rules
1184×rational.json-simplify-29
880×rational.json-simplify-1
804×rational.json-simplify-14
782×rational.json-simplify-15
708×rational.json-simplify-20
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02966297
110555237
256145237
Stop Event
node limit
Counts
187 → 190
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 0 (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (+.f64 0 (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 x.re x.re)))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 y.re y.re)))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 0 (-.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (-.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 0 (-.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re (-.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 x.re x.re)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 y.re y.re)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (-.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 y.re (neg.f64 x.re))))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im y.im) (-.f64 0 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im y.im) (-.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (-.f64 y.re y.re)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))
(+.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 y.re (-.f64 (neg.f64 x.re) x.re))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 0 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re (+.f64 y.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)) -1))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)) -1))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 y.re (neg.f64 x.re)) (*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) -1))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 0 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 x.im x.im)))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 y.im y.im)))
(+.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (+.f64 0 (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (*.f64 y.re 3))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 3))))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (-.f64 0 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))))
(+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.im y.im)))
(+.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re)))
(+.f64 (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 x.re (+.f64 y.re y.re)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (-.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(+.f64 (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))) (-.f64 0 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3))))))
(+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re y.re))))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) -1/2)
(*.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2) -1/2)
(*.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(*.f64 -1/2 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(*.f64 -1/2 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))
(*.f64 -2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(*.f64 -2 (/.f64 1/2 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)) -1/2)
(*.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) -1)
(*.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(*.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)
(*.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) -1)
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)
(*.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1)
(*.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1)
(*.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1/2)
(*.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))) -1/2)
(*.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1/2)
(*.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))) 1/2)
(*.f64 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) 2)
(*.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im))) -1/2)
(*.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1/2)
(*.f64 (+.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) -1/2)
(*.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))))) -1/2)
(*.f64 (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2))) -1/2)
(*.f64 (+.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))))) -1/2)
(*.f64 (+.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) 1/2)
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(/.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(/.f64 -1 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(/.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2)))
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) -1)
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)
(/.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) -1)
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)
(/.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1)
(/.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1)
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
Outputs
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im)))
(+.f64 x.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im)))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) y.re))
(+.f64 (*.f64 x.re y.re) (+.f64 0 (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im))))
(+.f64 x.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 0 (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im))))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) y.re))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 x.re x.re)))
(+.f64 x.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 y.re y.re)))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) y.re))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 0 (-.f64 y.re x.re)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 0 (-.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 0 (-.f64 y.re x.re)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (-.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 0 (-.f64 y.re x.re)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 0 (-.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 0 (-.f64 y.re x.re))))
(+.f64 (*.f64 0 (-.f64 y.re x.re)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re (-.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 x.re x.re)))
(+.f64 (*.f64 x.re y.re) (-.f64 x.re (-.f64 x.re (*.f64 x.im (neg.f64 y.im)))))
(-.f64 x.re (-.f64 x.re (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 y.re y.re)))
(+.f64 (*.f64 x.re y.re) (-.f64 y.re (-.f64 y.re (*.f64 x.im (neg.f64 y.im)))))
(-.f64 y.re (-.f64 y.re (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (-.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 y.re (neg.f64 x.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im x.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.im x.im) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im x.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.im (*.f64 y.im x.im)) y.im))
(+.f64 (*.f64 x.im y.im) (-.f64 0 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im y.im) (-.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re))
(+.f64 x.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) y.re))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (-.f64 y.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re))))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 y.re (neg.f64 x.re))))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.re (neg.f64 y.re))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (*.f64 (*.f64 x.re (-.f64 y.re (*.f64 y.re 3))) 1/2) (*.f64 y.im x.im)))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 y.re (-.f64 (neg.f64 x.re) x.re))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 y.re (-.f64 (neg.f64 x.re) x.re))))
(+.f64 (*.f64 y.re (-.f64 (neg.f64 x.re) x.re)) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 0 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re (+.f64 y.re y.re))))
(+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (-.f64 x.im (-.f64 x.im (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (-.f64 y.im (-.f64 y.im (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)) -1))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (-.f64 x.im (-.f64 x.im (*.f64 x.re y.re))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)) -1))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (-.f64 y.im (-.f64 y.im (*.f64 x.re y.re))))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re (neg.f64 x.re)) (*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) -1))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 0 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 x.im x.im)))
(-.f64 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (-.f64 x.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 x.im x.im))
(+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 y.im y.im)))
(+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (-.f64 y.im (-.f64 y.im (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(-.f64 y.im (-.f64 y.im (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(+.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 y.im x.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.im x.im) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 y.im x.im) (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.im (*.f64 y.im x.im)) y.im))
(+.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 x.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) y.re))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (+.f64 0 (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (*.f64 y.re 3))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 3))))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)) (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 x.re (-.f64 (-.f64 y.re y.re) (*.f64 y.re 3))) (-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (*.f64 y.im x.im)))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (-.f64 0 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))) (neg.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))))))
(+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))))
(+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))) (neg.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))))))
(+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (-.f64 x.re x.re) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 x.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 (-.f64 y.re y.re) (*.f64 x.im y.im)) (*.f64 x.re y.re))
(+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 y.re (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) y.re))
(+.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 x.re (+.f64 y.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (neg.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (-.f64 0 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4))
(+.f64 (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))) (-.f64 0 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3))))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 2 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.re y.re))))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (*.f64 x.re y.re) 1/2)))
(*.f64 1/2 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (*.f64 x.re (-.f64 y.re y.re))))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))) (neg.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))))))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))
(+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))))
(*.f64 1/2 (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))))
(*.f64 -2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -2 (/.f64 1/2 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) -1)
(+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))) (neg.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))))))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)
(+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4))
(*.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1)
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(*.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1)
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))))
(*.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1/2)
(*.f64 1/2 (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))))
(*.f64 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))) 1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) 2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im))) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (+.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) -1/2)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (+.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))))) -1/2)
(+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))) (neg.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))))))
(*.f64 (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2))) -1/2)
(+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4))
(*.f64 (+.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3)))))) -1/2)
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(*.f64 (+.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) 1/2)
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 -1 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) 2)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im y.im)) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3)))) -1)
(+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))) (neg.f64 (-.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))))))
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)
(+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 2)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4))
(/.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))))) -1)
(+.f64 (*.f64 x.re (+.f64 y.re (*.f64 y.re 3))) (neg.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (+.f64 x.re (*.f64 x.re 3))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(/.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1)
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))))
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))

eval34.0ms (1.1%)

Compiler

Compiled 3470 to 1079 computations (68.9% saved)

prune31.0ms (1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1864190
Fresh000
Picked011
Done000
Total1865191
Error
0b
Counts
191 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
0.3b
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
34.0b
(*.f64 x.re y.re)
26.8b
(neg.f64 (*.f64 y.im x.im))
Compiler

Compiled 63 to 42 computations (33.3% saved)

localize6.0ms (0.2%)

Compiler

Compiled 13 to 6 computations (53.8% saved)

localize3.0ms (0.1%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

localize20.0ms (0.7%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
0.7b
(-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))
Compiler

Compiled 60 to 33 computations (45% saved)

series2.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
y.re
@inf
(-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))
0.0ms
y.re
@-inf
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
0.0ms
y.re
@inf
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
0.0ms
y.im
@inf
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
0.0ms
y.im
@0
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))

rewrite55.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
914×rational.json-simplify-23
884×rational.json-1
884×rational.json-2
884×rational.json-4
884×rational.json-3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01572
19744
235220
3219120
Stop Event
node limit
Counts
2 → 150
Calls
Call 1
Inputs
(-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y.re 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y.re (-.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y.re (-.f64 (*.f64 y.re 7) (*.f64 y.re 7)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 3) (*.f64 y.re -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 3) (-.f64 (+.f64 y.re (*.f64 y.re 4)) (*.f64 y.re 7)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 4) (*.f64 y.re -3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 y.re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 y.re y.re) y.re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 7 (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y.re (*.f64 y.re 7)) (-.f64 (+.f64 y.re (*.f64 y.re 7)) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re -3) (*.f64 y.re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re -2) (*.f64 y.re 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y.re y.re) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 6) (-.f64 y.re (*.f64 y.re 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (-.f64 0 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 y.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y.re y.re) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (+.f64 (neg.f64 y.re) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 y.re) (neg.f64 y.re)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (-.f64 0 (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1/2 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 y.re) (+.f64 (neg.f64 y.re) (neg.f64 y.re))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7)) (+.f64 (*.f64 y.re 7) (*.f64 y.re 7))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 y.re 6) (*.f64 y.re 7)) (+.f64 (*.f64 y.re 6) (*.f64 y.re 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 0 (+.f64 y.re y.re)) (neg.f64 y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (+.f64 y.re (*.f64 y.re 7)) (+.f64 y.re y.re)) (*.f64 y.re 7)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 y.re y.re)) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7)) (+.f64 0 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 y.re y.re) y.re) (+.f64 (+.f64 y.re y.re) (+.f64 y.re y.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x . y.re)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 0 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im 0) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im 0) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 0 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (neg.f64 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (-.f64 y.re y.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.re 0) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 (*.f64 y.re 4) 0) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 0 (neg.f64 x.re)) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.re 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.im 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.im 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 y.im 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 x.im 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im 0) (*.f64 y.im 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.im 0) (*.f64 y.im 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im 0) (*.f64 x.im 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.im 0) (*.f64 x.im 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im x.im) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 x.re 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re (*.f64 3 x.re)) (-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re (*.f64 y.re -3)) (*.f64 y.im x.im)) (*.f64 x.re (*.f64 y.re -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (/.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re (*.f64 y.re -3)) (/.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 3 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 x.re (*.f64 y.re 7)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 y.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re))) (*.f64 x.re (*.f64 y.re 7)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (+.f64 x.re x.re))) (*.f64 y.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2)) (*.f64 y.im (neg.f64 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 0 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))) (*.f64 y.re (*.f64 3 x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) 2)) (*.f64 y.im (neg.f64 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) y.re) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re 3)) (*.f64 y.re -3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re -3)) (*.f64 y.re 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 -1 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) 1/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (*.f64 y.im x.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 y.im x.im)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re 0) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 y.re (*.f64 3 x.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re (+.f64 x.re x.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.re (*.f64 3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 y.re 7)) (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 y.re 7)) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re (*.f64 y.re -4)) (-.f64 (*.f64 x.re (*.f64 y.re -3)) (*.f64 y.im x.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (+.f64 x.re x.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.re (*.f64 3 x.re)) (+.f64 0 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re))) (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))))

simplify87.0ms (2.8%)

Algorithm
egg-herbie
Rules
986×rational.json-simplify-51
944×rational.json-simplify-15
900×rational.json-simplify-9
682×rational.json-simplify-14
622×rational.json-simplify-21
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03355258
112724432
279574432
Stop Event
node limit
Counts
210 → 218
Calls
Call 1
Inputs
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 y.re 0)
(+.f64 y.re (-.f64 y.re y.re))
(+.f64 y.re (-.f64 (*.f64 y.re 7) (*.f64 y.re 7)))
(+.f64 (*.f64 y.re 3) (*.f64 y.re -2))
(+.f64 (*.f64 y.re 3) (-.f64 (+.f64 y.re (*.f64 y.re 4)) (*.f64 y.re 7)))
(+.f64 (*.f64 y.re 4) (*.f64 y.re -3))
(+.f64 0 y.re)
(+.f64 (-.f64 y.re y.re) y.re)
(+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 7 (neg.f64 y.re)))
(+.f64 (+.f64 y.re (*.f64 y.re 7)) (-.f64 (+.f64 y.re (*.f64 y.re 7)) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))
(+.f64 (*.f64 y.re -3) (*.f64 y.re 4))
(+.f64 (*.f64 y.re -2) (*.f64 y.re 3))
(+.f64 (+.f64 y.re y.re) (neg.f64 y.re))
(+.f64 (*.f64 y.re 6) (-.f64 y.re (*.f64 y.re 6)))
(+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (-.f64 0 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))
(*.f64 y.re 1)
(*.f64 1 y.re)
(*.f64 (neg.f64 y.re) -1)
(*.f64 -1 (neg.f64 y.re))
(*.f64 (+.f64 y.re y.re) 1/2)
(*.f64 1/2 (+.f64 y.re y.re))
(*.f64 -1/2 (+.f64 (neg.f64 y.re) (neg.f64 y.re)))
(*.f64 (+.f64 (neg.f64 y.re) (neg.f64 y.re)) -1/2)
(/.f64 y.re 1)
(/.f64 1 (/.f64 1 y.re))
(/.f64 (neg.f64 y.re) -1)
(/.f64 -1 (/.f64 -1 y.re))
(/.f64 -1 (-.f64 0 (/.f64 1 y.re)))
(/.f64 1/2 (/.f64 1/2 y.re))
(/.f64 (-.f64 (neg.f64 y.re) (+.f64 (neg.f64 y.re) (neg.f64 y.re))) 1)
(/.f64 (-.f64 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7)) (+.f64 (*.f64 y.re 7) (*.f64 y.re 7))) 1)
(/.f64 (-.f64 (+.f64 (*.f64 y.re 6) (*.f64 y.re 7)) (+.f64 (*.f64 y.re 6) (*.f64 y.re 6))) 1)
(/.f64 (-.f64 (-.f64 0 (+.f64 y.re y.re)) (neg.f64 y.re)) -1)
(/.f64 (-.f64 (-.f64 (+.f64 y.re (*.f64 y.re 7)) (+.f64 y.re y.re)) (*.f64 y.re 7)) -1)
(/.f64 (-.f64 (-.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 y.re y.re)) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) -1)
(/.f64 (-.f64 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7)) (+.f64 0 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))) -1)
(/.f64 (-.f64 (+.f64 (+.f64 y.re y.re) y.re) (+.f64 (+.f64 y.re y.re) (+.f64 y.re y.re))) -1)
(/.f64 (-.f64 (+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))) -1)
(neg.f64 (neg.f64 y.re))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(-.f64 (*.f64 y.im x.im) (+.f64 0 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im 0) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im 0) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 0 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 y.re y.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 y.re y.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (*.f64 x.re 0)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 x.re 0)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (neg.f64 x.re)))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re x.re) (+.f64 (-.f64 y.re y.re) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.re 0) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 (*.f64 y.re 4) 0) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 0 (neg.f64 x.re)) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 y.re y.re)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (*.f64 x.re 0)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.re 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 x.re 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 y.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 x.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im 0) (*.f64 y.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.im 0) (*.f64 y.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im 0) (*.f64 x.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.im 0) (*.f64 x.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im x.im) (*.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (-.f64 y.re y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (-.f64 y.re y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 y.re y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (*.f64 x.re 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (*.f64 x.re 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 x.re 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 0 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.re (*.f64 3 x.re)) (-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re)))
(-.f64 (-.f64 (*.f64 x.re (*.f64 y.re -3)) (*.f64 y.im x.im)) (*.f64 x.re (*.f64 y.re -4)))
(-.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (/.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) -1))
(-.f64 (*.f64 x.re 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (*.f64 x.re (*.f64 y.re -3)) (/.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) -1))
(-.f64 (*.f64 y.im 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 3 x.re)))
(-.f64 (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 x.re (*.f64 y.re 7)))
(-.f64 (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re))) (*.f64 x.re (*.f64 y.re 7)))
(-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (+.f64 x.re x.re))) (*.f64 y.re x.re))
(-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2)) (*.f64 y.im (neg.f64 x.im)))
(-.f64 (+.f64 0 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))) (*.f64 y.re (*.f64 3 x.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) 2)) (*.f64 y.im (neg.f64 x.im)))
(-.f64 (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re))))
(-.f64 (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) y.re) (neg.f64 y.re))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re 3)) (*.f64 y.re -3))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re -3)) (*.f64 y.re 3))
(*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(*.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(*.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))
(*.f64 -1/2 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(*.f64 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) -1/2)
(/.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(/.f64 1 (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(/.f64 1/2 (/.f64 -1 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))
(/.f64 (*.f64 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) 1/2) -1)
(/.f64 (-.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (*.f64 y.im x.im)) -1)
(/.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 y.im x.im)) -1)
(/.f64 (-.f64 (*.f64 x.re 0) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) -1)
(/.f64 (-.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) -1)
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 y.re (*.f64 3 x.re))) -1)
(/.f64 (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re (+.f64 x.re x.re))) -1)
(/.f64 (-.f64 (*.f64 y.re (*.f64 3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.im x.im))) -1)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 7)) (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im))) -1)
(/.f64 (-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 y.im x.im))) -1)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 7)) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)))) -1)
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re -4)) (-.f64 (*.f64 x.re (*.f64 y.re -3)) (*.f64 y.im x.im))) -1)
(/.f64 (-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (+.f64 x.re x.re)))) -1)
(/.f64 (-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2))) -1)
(/.f64 (-.f64 (*.f64 y.re (*.f64 3 x.re)) (+.f64 0 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))))) -1)
(/.f64 (-.f64 (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re))) (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))))) -1)
(/.f64 (-.f64 (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))) -1)
(neg.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
Outputs
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 y.re 0)
y.re
(+.f64 y.re (-.f64 y.re y.re))
y.re
(+.f64 y.re (-.f64 (*.f64 y.re 7) (*.f64 y.re 7)))
y.re
(+.f64 (*.f64 y.re 3) (*.f64 y.re -2))
y.re
(+.f64 (*.f64 y.re 3) (-.f64 (+.f64 y.re (*.f64 y.re 4)) (*.f64 y.re 7)))
(+.f64 (+.f64 y.re (*.f64 y.re 4)) (-.f64 (*.f64 y.re 3) (*.f64 y.re 7)))
(+.f64 (*.f64 y.re 5) (*.f64 y.re -4))
(+.f64 (*.f64 y.re 4) (*.f64 y.re -3))
y.re
(+.f64 0 y.re)
y.re
(+.f64 (-.f64 y.re y.re) y.re)
y.re
(+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 7 (neg.f64 y.re)))
(+.f64 (*.f64 y.re 8) (*.f64 y.re -7))
(+.f64 (+.f64 y.re (*.f64 y.re 7)) (-.f64 (+.f64 y.re (*.f64 y.re 7)) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))
y.re
(+.f64 (*.f64 y.re -3) (*.f64 y.re 4))
y.re
(+.f64 (*.f64 y.re -2) (*.f64 y.re 3))
y.re
(+.f64 (+.f64 y.re y.re) (neg.f64 y.re))
y.re
(+.f64 (*.f64 y.re 6) (-.f64 y.re (*.f64 y.re 6)))
y.re
(+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (-.f64 0 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))
y.re
(*.f64 y.re 1)
y.re
(*.f64 1 y.re)
y.re
(*.f64 (neg.f64 y.re) -1)
y.re
(*.f64 -1 (neg.f64 y.re))
y.re
(*.f64 (+.f64 y.re y.re) 1/2)
y.re
(*.f64 1/2 (+.f64 y.re y.re))
y.re
(*.f64 -1/2 (+.f64 (neg.f64 y.re) (neg.f64 y.re)))
y.re
(*.f64 (+.f64 (neg.f64 y.re) (neg.f64 y.re)) -1/2)
y.re
(/.f64 y.re 1)
y.re
(/.f64 1 (/.f64 1 y.re))
y.re
(/.f64 (neg.f64 y.re) -1)
y.re
(/.f64 -1 (/.f64 -1 y.re))
y.re
(/.f64 -1 (-.f64 0 (/.f64 1 y.re)))
y.re
(/.f64 1/2 (/.f64 1/2 y.re))
y.re
(/.f64 (-.f64 (neg.f64 y.re) (+.f64 (neg.f64 y.re) (neg.f64 y.re))) 1)
y.re
(/.f64 (-.f64 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7)) (+.f64 (*.f64 y.re 7) (*.f64 y.re 7))) 1)
y.re
(/.f64 (-.f64 (+.f64 (*.f64 y.re 6) (*.f64 y.re 7)) (+.f64 (*.f64 y.re 6) (*.f64 y.re 6))) 1)
(+.f64 (*.f64 y.re 6) (-.f64 (*.f64 y.re 7) (+.f64 (*.f64 y.re 6) (*.f64 y.re 6))))
(-.f64 (*.f64 y.re 13) (*.f64 y.re 12))
(/.f64 (-.f64 (-.f64 0 (+.f64 y.re y.re)) (neg.f64 y.re)) -1)
y.re
(/.f64 (-.f64 (-.f64 (+.f64 y.re (*.f64 y.re 7)) (+.f64 y.re y.re)) (*.f64 y.re 7)) -1)
y.re
(/.f64 (-.f64 (-.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 y.re y.re)) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) -1)
y.re
(/.f64 (-.f64 (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7)) (+.f64 0 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))) -1)
y.re
(/.f64 (-.f64 (+.f64 (+.f64 y.re y.re) y.re) (+.f64 (+.f64 y.re y.re) (+.f64 y.re y.re))) -1)
y.re
(/.f64 (-.f64 (+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))) (+.f64 y.re (+.f64 (+.f64 y.re (*.f64 y.re 7)) (*.f64 y.re 7))))) -1)
y.re
(neg.f64 (neg.f64 y.re))
y.re
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.im (*.f64 2 y.im)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.im x.im) (+.f64 0 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.im (*.f64 2 y.im)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im 0) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (-.f64 (+.f64 (*.f64 y.im 0) (*.f64 (*.f64 y.im x.im) 2)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im (*.f64 2 y.im)) (-.f64 (*.f64 y.im 0) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im 0) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 (*.f64 y.im x.im) 2) (-.f64 (*.f64 x.im 0) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im (*.f64 2 y.im)) (-.f64 (*.f64 x.im 0) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 (*.f64 y.im x.im) 2) (-.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im (*.f64 2 y.im)) (-.f64 (*.f64 (*.f64 y.im x.im) 0) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 0 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.im 0) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 x.im 0) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re x.re) (-.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.im x.im) 2)) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 y.im x.im) (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) 0)) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 y.re y.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 y.re (-.f64 (+.f64 y.re (-.f64 (*.f64 x.im (*.f64 2 y.im)) (*.f64 y.re x.re))) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 y.re y.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 y.re (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) y.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 y.re (-.f64 (-.f64 (*.f64 y.re x.re) y.re) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (*.f64 x.re 0)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.im (*.f64 2 y.im)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 x.re 0)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (-.f64 (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.im (*.f64 2 y.im)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (-.f64 (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (neg.f64 x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) 2) (-.f64 (*.f64 (*.f64 y.im x.im) -2) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 (*.f64 y.im x.im) 0) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 (*.f64 y.im x.im) -2) (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2)) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (+.f64 (*.f64 y.im (*.f64 -2 x.im)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 x.im)))))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (+.f64 (-.f64 y.re y.re) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 y.re (-.f64 (*.f64 y.im x.im) y.re)))
(-.f64 y.re (-.f64 (+.f64 y.re (*.f64 y.im x.im)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.re 0) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 (*.f64 y.re 4) 0) (*.f64 y.im x.im)))
(-.f64 (*.f64 y.re x.re) (+.f64 y.re (-.f64 (*.f64 y.im x.im) y.re)))
(-.f64 y.re (-.f64 (+.f64 y.re (*.f64 y.im x.im)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 0 (neg.f64 x.re)) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 y.re y.re)))
(-.f64 (*.f64 y.re x.re) (+.f64 y.re (-.f64 (*.f64 y.im x.im) y.re)))
(-.f64 y.re (-.f64 (+.f64 y.re (*.f64 y.im x.im)) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (*.f64 x.re 0)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im x.im) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.re 0))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 x.re 0)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 y.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (*.f64 x.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im 0) (*.f64 y.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.im 0) (*.f64 y.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 0 (-.f64 x.im y.im))) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im 0) (*.f64 x.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.im 0) (*.f64 x.im 0))) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 0 (-.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.im 0) (*.f64 x.im 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 (*.f64 y.im x.im) (*.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im (-.f64 x.im x.im))) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (-.f64 y.re y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (-.f64 y.re y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 y.re y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (*.f64 x.re 0)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (*.f64 x.re 0)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 x.re 0)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 0 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 y.re y.re) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re 0) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 0 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (*.f64 y.re (*.f64 3 x.re)) (-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(-.f64 (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3)))))
(-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))))
(-.f64 (-.f64 (*.f64 x.re (*.f64 y.re -3)) (*.f64 y.im x.im)) (*.f64 x.re (*.f64 y.re -4)))
(-.f64 (-.f64 (*.f64 y.re (*.f64 x.re -3)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re -4)))
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (/.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) -1))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re (*.f64 y.re -3)) (/.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) -1))
(-.f64 (*.f64 y.re (*.f64 x.re -3)) (neg.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))))
(-.f64 (*.f64 y.im 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.im x.im) (*.f64 y.im 0)))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im (-.f64 x.im 0)))
(-.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im 0)))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im (-.f64 y.im 0)))
(-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 3 x.re)))
(-.f64 (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 x.re (*.f64 y.re 7)))
(-.f64 (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re 7)))
(-.f64 (-.f64 (*.f64 y.re (*.f64 (+.f64 x.re x.re) 4)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re 7)))
(-.f64 (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 y.re x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re))) (*.f64 x.re (*.f64 y.re 7)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.re (*.f64 x.re 7))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 (+.f64 x.re x.re) 4)) (*.f64 y.re (*.f64 x.re 7))))
(-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (+.f64 x.re x.re))) (*.f64 y.re x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2)) (*.f64 y.im (neg.f64 x.im)))
(+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 (*.f64 y.im x.im) -2) (*.f64 y.im (neg.f64 x.im))))
(+.f64 (*.f64 y.im (*.f64 -2 x.im)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 x.im))))
(-.f64 (+.f64 0 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))) (*.f64 y.re (*.f64 3 x.re)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) 2)) (*.f64 y.im (neg.f64 x.im)))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im (*.f64 2 y.im))) (*.f64 y.im (neg.f64 x.im)))
(-.f64 (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4)))) (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))))
(-.f64 (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.im 0))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 x.im 0)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 x.im 0))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) y.re) (neg.f64 y.re))
(-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 y.re (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re x.re) y.re)))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re 3)) (*.f64 y.re -3))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.re 3)) (*.f64 y.im x.im)) (*.f64 y.re -3))
(-.f64 (-.f64 (*.f64 y.re (-.f64 x.re 3)) (*.f64 y.im x.im)) (*.f64 y.re -3))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re -3)) (*.f64 y.re 3))
(-.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.re 3)) (*.f64 y.im x.im)) (*.f64 y.re -3))
(-.f64 (-.f64 (*.f64 y.re (-.f64 x.re 3)) (*.f64 y.im x.im)) (*.f64 y.re -3))
(*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) 1/2)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1/2 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) -1/2)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 1 (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 -1 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (+.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) 1/2) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)) (*.f64 y.im x.im)) -1)
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (*.f64 y.im x.im) 2) (*.f64 y.re x.re)))
(-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.im (*.f64 2 y.im)) (*.f64 y.re x.re)))
(/.f64 (-.f64 (-.f64 (*.f64 y.re x.re) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 y.im x.im)) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re 0) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)) (*.f64 y.re (*.f64 3 x.re))) -1)
(-.f64 (*.f64 2 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3)))))
(/.f64 (-.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 y.re (+.f64 x.re x.re))) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.re (*.f64 3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.im x.im))) -1)
(-.f64 (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))) (*.f64 y.im x.im))
(-.f64 (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 7)) (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im))) -1)
(-.f64 (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re 7)))
(-.f64 (-.f64 (*.f64 y.re (*.f64 (+.f64 x.re x.re) 4)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re 7)))
(/.f64 (-.f64 (*.f64 y.re x.re) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 y.im x.im))) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re 7)) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)))) -1)
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 (*.f64 y.re 4) (+.f64 x.re x.re)) (*.f64 y.re (*.f64 x.re 7))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 (+.f64 x.re x.re) 4)) (*.f64 y.re (*.f64 x.re 7))))
(/.f64 (-.f64 (*.f64 x.re (*.f64 y.re -4)) (-.f64 (*.f64 x.re (*.f64 y.re -3)) (*.f64 y.im x.im))) -1)
(-.f64 (-.f64 (*.f64 y.re (*.f64 x.re -3)) (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re -4)))
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (+.f64 x.re x.re)))) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.im (neg.f64 x.im)) (+.f64 (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) -2))) -1)
(+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 (*.f64 y.im x.im) -2) (*.f64 y.im (neg.f64 x.im))))
(+.f64 (*.f64 y.im (*.f64 -2 x.im)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 x.im))))
(/.f64 (-.f64 (*.f64 y.re (*.f64 3 x.re)) (+.f64 0 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))))) -1)
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))))
(/.f64 (-.f64 (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (*.f64 y.re (*.f64 3 x.re))) (+.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (*.f64 x.re 4))))) -1)
(+.f64 (*.f64 y.im (neg.f64 x.im)) (-.f64 (*.f64 y.re (*.f64 x.re 4)) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re (-.f64 (*.f64 x.re 4) (*.f64 x.re 3))))
(/.f64 (-.f64 (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(neg.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 y.re x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))

localize11.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
Compiler

Compiled 44 to 10 computations (77.3% saved)

series7.0ms (0.2%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
0.0ms
x.re
@0
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
0.0ms
x.im
@0
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
0.0ms
y.im
@inf
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
0.0ms
y.im
@0
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
0.0ms
y.im
@-inf
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))

rewrite87.0ms (2.9%)

Algorithm
batch-egg-rewrite
Rules
860×rational.json-simplify-29
740×rational.json-1
740×rational.json-2
740×rational.json-4
740×rational.json-3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01262
17550
226044
3154044
4779544
Stop Event
node limit
Counts
2 → 208
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (neg.f64 y.re)) (/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 1 (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.re (+.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 x.re x.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 y.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (*.f64 x.im (+.f64 y.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (neg.f64 y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.im x.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (-.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 0 (-.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 0 (-.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) 3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 1 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 -1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 (+.f64 x.re x.re) (neg.f64 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x.im x.im) (+.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 y.im y.im) (+.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x.im (-.f64 y.im y.im)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 -1 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 x.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (-.f64 x.im x.im)) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (-.f64 y.im y.im)) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 y.im (*.f64 (neg.f64 x.im) 2))) (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) -1) (/.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im))) (*.f64 x.im (+.f64 y.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (/.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) -1) (*.f64 -1 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (*.f64 -1 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) 1/2) (*.f64 x.im y.im))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) 1/2) (*.f64 1/2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1/2) (*.f64 1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))) (+.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (*.f64 x.im y.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 x.re (+.f64 y.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 -1 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im (+.f64 y.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))))

simplify98.0ms (3.2%)

Algorithm
egg-herbie
Rules
1042×rational.json-simplify-14
994×rational.json-simplify-21
786×rational.json-simplify-5
742×rational.json-simplify-34
704×rational.json-simplify-9
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
045711690
1182411004
Stop Event
node limit
Counts
304 → 404
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im)
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im))))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(*.f64 y.im (-.f64 x.im (*.f64 2 x.im)))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 0)
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (neg.f64 y.im)))
(+.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 x.re y.re))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)) -1))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)) -1))
(+.f64 (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re (neg.f64 y.re)) (/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))) -1))
(+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 1 (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))))))
(+.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.re (+.f64 y.re y.re)))
(+.f64 (-.f64 (-.f64 x.re x.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))
(+.f64 (-.f64 (-.f64 y.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1)
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 2)))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))
(*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(*.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2) -1/2)
(*.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(*.f64 -1/2 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (+.f64 y.re y.re)))))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3)))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1)
(/.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(/.f64 -1 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(/.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2)))
(/.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))) 1)
(/.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) 1)
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (*.f64 x.im (+.f64 y.im y.im))) -1)
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) -1)
(/.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) -1)
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 2)) -1)
(/.f64 (-.f64 (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) -1)
(neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.im y.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (-.f64 y.im y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 0 (-.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 0 (-.f64 x.im y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))
(-.f64 0 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im)))
(-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (neg.f64 y.re)))
(-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) 3))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) -1))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 1 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 -1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 (+.f64 x.re x.re) (neg.f64 y.re)))
(-.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (-.f64 x.im x.im) (+.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (-.f64 y.im y.im) (+.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.im x.im)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.im y.im)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re)))
(-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))))
(-.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (*.f64 x.im (-.f64 y.im y.im)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) -1))
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 -1 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.im y.im))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))))
(-.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 x.re y.re))
(-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 x.im x.im)) (*.f64 x.im y.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))
(-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 y.im y.im)) (*.f64 x.im y.im))
(-.f64 (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 y.im (*.f64 (neg.f64 x.im) 2))) (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))))
(-.f64 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) 3)))
(-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (/.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) -1) (/.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im))) (*.f64 x.im (+.f64 y.im y.im)))
(-.f64 (/.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (/.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) -1))
(-.f64 (*.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) -1) (*.f64 -1 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (*.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (*.f64 -1 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) 1/2) (*.f64 x.im y.im))
(-.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) 1/2) (*.f64 1/2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1/2) (*.f64 1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.im y.im)))
(-.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 x.re y.re)))
(-.f64 (+.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))) (+.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))
(-.f64 (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(-.f64 (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 -1 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 -1 (-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 -1 (-.f64 (*.f64 (*.f64 x.im y.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))
(*.f64 -1 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(*.f64 -1 (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))
(*.f64 -1 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 1/2 (-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 1/2 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(*.f64 1/2 (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 x.re (+.f64 y.re y.re))))
(*.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1/2)
(*.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(*.f64 -1/2 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(/.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(/.f64 1/2 (/.f64 -1 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im (+.f64 y.im y.im))) -1)
(/.f64 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(/.f64 (-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1)
(/.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) -1)
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))) -1)
(/.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) -1)
(/.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))) -1)
(/.f64 (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))) -1)
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) -1)
(/.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))) 1)
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
Outputs
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 -2 (*.f64 y.im x.im))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(*.f64 x.re y.re)
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im)
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 y.im (-.f64 x.im (*.f64 x.im 2)))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 (-.f64 y.im (*.f64 2 y.im)) x.im) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im))))
(*.f64 -1 (*.f64 x.im (-.f64 (neg.f64 y.im) (*.f64 -2 y.im))))
(*.f64 x.im (*.f64 1 (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 x.im (-.f64 (neg.f64 y.im) (*.f64 -2 y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 1 (neg.f64 y.im))))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 x.im (-.f64 (neg.f64 y.im) (*.f64 -2 y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 1 (neg.f64 y.im))))
(+.f64 (*.f64 -1 (*.f64 x.im (-.f64 (*.f64 -1 y.im) (*.f64 -2 y.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -1 (*.f64 x.im (-.f64 (neg.f64 y.im) (*.f64 -2 y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 1 (neg.f64 y.im))))
(*.f64 x.re y.re)
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 y.im (-.f64 x.im (*.f64 2 x.im)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 y.im (-.f64 x.im (*.f64 x.im 2)))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 y.im (-.f64 x.im (*.f64 2 x.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im))))
(*.f64 y.im (*.f64 -1 (-.f64 (neg.f64 x.im) (*.f64 -2 x.im))))
(*.f64 (*.f64 x.im 1) (neg.f64 y.im))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 -1 (-.f64 (neg.f64 x.im) (*.f64 -2 x.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im 1) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 -1 (-.f64 (neg.f64 x.im) (*.f64 -2 x.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im 1) (neg.f64 y.im)))
(+.f64 (*.f64 -1 (*.f64 y.im (-.f64 (*.f64 -1 x.im) (*.f64 -2 x.im)))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 -1 (-.f64 (neg.f64 x.im) (*.f64 -2 x.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im 1) (neg.f64 y.im)))
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 y.im (-.f64 x.im (*.f64 x.im 2)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (*.f64 y.im x.im) (*.f64 2 (*.f64 y.im x.im)))
(*.f64 x.im (-.f64 y.im (*.f64 y.im 2)))
(*.f64 y.im (-.f64 x.im (*.f64 x.im 2)))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(*.f64 x.re y.re)
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (*.f64 2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (*.f64 y.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im (*.f64 x.im 2))))
(+.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 x.re x.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (-.f64 x.re (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 x.re y.re) x.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 0)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (neg.f64 y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 (neg.f64 y.im) y.im)))
(+.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.im x.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 (neg.f64 y.im) y.im)))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 -1/2 (-.f64 (*.f64 x.re (*.f64 y.re 3)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (*.f64 y.im x.im) 3)))))
(+.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 y.im (*.f64 3 x.im)) (*.f64 y.re (*.f64 x.re 3))))))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 x.re y.re))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 -2 (*.f64 y.im x.im)))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im (*.f64 2 (neg.f64 x.im))) (*.f64 -1 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 -1 (-.f64 (-.f64 x.im (*.f64 x.re y.re)) x.im)))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im (*.f64 2 (neg.f64 x.im))) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 -1 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)) -1))
(+.f64 (*.f64 y.im (*.f64 2 (neg.f64 x.im))) (neg.f64 (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (neg.f64 (-.f64 (-.f64 x.im (*.f64 x.re y.re)) x.im)))
(+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)) -1))
(+.f64 (*.f64 y.im (*.f64 2 (neg.f64 x.im))) (neg.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (*.f64 -2 (*.f64 y.im x.im)) (neg.f64 (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(+.f64 (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))) (*.f64 x.re (neg.f64 y.re)))
(+.f64 (*.f64 x.re (neg.f64 y.re)) (/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))) -1))
(+.f64 (*.f64 x.re (neg.f64 y.re)) (neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re)))) (*.f64 x.re (neg.f64 y.re)))
(+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))
(+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 -2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (*.f64 x.re y.re)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(+.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 -2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 1 (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))))))
(+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.re (+.f64 y.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (-.f64 (-.f64 x.re x.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (-.f64 x.re (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 x.re y.re) x.re))
(+.f64 (-.f64 (-.f64 y.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re y.re))
(-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 0 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(+.f64 (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))
(+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 y.re (-.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))))
(*.f64 1/2 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re (-.f64 x.re x.re)) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im))))))
(*.f64 1/2 (+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 (*.f64 x.re y.re) 1/2) (*.f64 1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))))
(*.f64 1/2 (+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (*.f64 y.im x.im) 3))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 3 x.im)))))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 -1 (-.f64 (*.f64 x.im (*.f64 2 (+.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2))))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(*.f64 -1 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(*.f64 -1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (*.f64 y.im x.im) 3))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im (*.f64 3 x.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (*.f64 -2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3)))))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 2)))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 2 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 4) 1) (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -3))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))))))
(*.f64 -1 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (*.f64 y.re (*.f64 x.re 3))) (+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2))))))
(*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 1/2)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(*.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2) -1/2)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1/2 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 1/2 (+.f64 y.im y.im))))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (+.f64 y.re y.re)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))
(*.f64 -1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re (*.f64 y.re 3)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (*.f64 2 (+.f64 y.re y.re)))))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3))))))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 1)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 -1 (/.f64 -1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))) 1)
(*.f64 -1 (-.f64 (*.f64 x.im (*.f64 2 (+.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re y.re) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2))))
(/.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) 1)
(*.f64 -1 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 y.re (*.f64 x.re 3)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (*.f64 x.im (+.f64 y.im y.im))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 x.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)
(neg.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (*.f64 y.im x.im) 3))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(neg.f64 (-.f64 (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im (*.f64 3 x.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(/.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) -1)
(neg.f64 (-.f64 (-.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(neg.f64 (-.f64 (-.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (*.f64 -2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3)))))
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) 2)) -1)
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 3) (*.f64 2 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)) -3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 4)))
(/.f64 (-.f64 (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) -1)
(neg.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (*.f64 x.re (*.f64 y.re 3)))) (+.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))))))
(neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (*.f64 y.re (*.f64 x.re 3))) (+.f64 (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2)) (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2))))))
(neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (-.f64 y.im y.im))))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im)))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 y.im (neg.f64 x.im)))
(-.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 (+.f64 y.im y.im) y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.im x.im))
(-.f64 x.im (-.f64 x.im (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 x.im (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re y.re) x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re))
(-.f64 x.re (-.f64 x.re (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 (-.f64 x.re (-.f64 x.re (*.f64 x.re y.re))) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 y.re y.re))
(-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 y.re y.re)) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.im y.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 y.im y.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (-.f64 y.im y.im)))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (-.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 0 (-.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 0 (-.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 0 (-.f64 x.im y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 0 (-.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 0))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 0 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 x.im (+.f64 y.im y.im)))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re)))
(-.f64 x.im (-.f64 (-.f64 x.im (*.f64 x.re y.re)) (*.f64 y.im (neg.f64 x.im))))
(-.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.im y.im) (*.f64 x.im (neg.f64 y.im))))
(-.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.im y.im) (*.f64 y.im (neg.f64 x.im))))
(-.f64 (*.f64 x.re (+.f64 y.re y.re)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) 3))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 y.im x.im) 3))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im (*.f64 3 x.im))))
(-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im)))))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))))
(-.f64 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (+.f64 y.re y.re))))
(-.f64 (*.f64 x.re (+.f64 y.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im)))))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (/.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) -1))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 1 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (*.f64 -1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.im (*.f64 2 (neg.f64 x.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1)))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))
(-.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 (+.f64 x.re x.re) (neg.f64 y.re)))
(-.f64 (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re)) (*.f64 (neg.f64 y.re) (+.f64 x.re x.re)))
(-.f64 (-.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re y.re)) (*.f64 (neg.f64 y.re) (+.f64 x.re x.re)))
(-.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (-.f64 x.im x.im)))
(-.f64 (*.f64 x.re y.re) (-.f64 x.im (-.f64 x.im (*.f64 y.im x.im))))
(-.f64 (-.f64 x.im x.im) (+.f64 (-.f64 x.im x.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (-.f64 x.im x.im) (+.f64 (*.f64 y.im x.im) (-.f64 (-.f64 x.im x.im) (*.f64 x.re y.re))))
(-.f64 (-.f64 x.im x.im) (+.f64 (*.f64 y.im x.im) (-.f64 (-.f64 x.im (*.f64 x.re y.re)) x.im)))
(-.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (-.f64 y.im y.im)))
(-.f64 (-.f64 y.im y.im) (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))
(-.f64 (-.f64 y.im y.im) (+.f64 (-.f64 y.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (-.f64 y.im y.im) (+.f64 (*.f64 y.im x.im) (-.f64 (-.f64 y.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.im x.im)))
(-.f64 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 x.im x.im)))
(-.f64 x.im (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.im) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.im y.im)))
(-.f64 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 y.im (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) y.im)))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (+.f64 (*.f64 x.re y.re) (-.f64 (-.f64 y.im y.im) (*.f64 y.im x.im))))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 x.re x.re)))
(-.f64 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 x.re (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) x.re) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 y.re y.re)))
(-.f64 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 y.re (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) y.re)))
(-.f64 y.re (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) y.re) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))))
(-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 y.im x.im) 3)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))))
(-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 y.im (*.f64 3 x.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (*.f64 x.im (*.f64 2 (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(-.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (*.f64 x.im (*.f64 2 (+.f64 y.im y.im))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))))))
(-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2)))))
(-.f64 (*.f64 x.im (-.f64 y.im y.im)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (-.f64 y.im y.im))))
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) -1))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 -1 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.im y.im))
(-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im (-.f64 x.im x.im)) (*.f64 y.im x.im)))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))))
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3))))
(-.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 x.re y.re))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.re y.re)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re)))
(-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 x.im x.im)) (*.f64 x.im y.im))
(-.f64 x.im (-.f64 x.im (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(-.f64 x.im (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re y.re) x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 y.im x.im) 3)) (*.f64 y.im (*.f64 2 (neg.f64 x.im))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im (*.f64 3 x.im))) (*.f64 -2 (*.f64 y.im x.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 y.im y.im)) (*.f64 x.im y.im))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (-.f64 y.im y.im))
(-.f64 (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 y.im (*.f64 (neg.f64 x.im) 2))) (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (-.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.im (*.f64 2 (neg.f64 x.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (*.f64 y.im 1)))
(-.f64 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 x.im y.im) 3)))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 (*.f64 y.im x.im) 3)))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 y.im (*.f64 3 x.im)) (*.f64 x.re y.re))))
(-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re (+.f64 y.re y.re))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 y.im x.im) (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3))
(-.f64 (*.f64 2 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))))
(-.f64 (/.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) -1) (/.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im))) (*.f64 x.im (+.f64 y.im y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (neg.f64 y.im)))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 y.im (neg.f64 x.im)))
(-.f64 (/.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (/.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) -1))
(/.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) -1)
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -2))
(-.f64 (*.f64 (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2)) -1) (*.f64 -1 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2))))
(-.f64 (*.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (*.f64 -1 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(/.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) -1)
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -2))
(-.f64 (*.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1) (*.f64 y.im (*.f64 (neg.f64 x.im) 2)))
(-.f64 (neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (*.f64 y.im (*.f64 2 (neg.f64 x.im))))
(-.f64 (neg.f64 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (*.f64 -2 (*.f64 y.im x.im)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) 1/2) (*.f64 x.im y.im))
(-.f64 (*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (*.f64 y.im x.im))
(-.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) 1/2) (*.f64 1/2 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 1/2 (-.f64 (+.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) 1/2) (*.f64 1/2 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) 1/2) (*.f64 1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 1/2 (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3)))))
(-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 y.im x.im) 3)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))))
(-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 y.im (*.f64 3 x.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im)))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) (+.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) (*.f64 x.im y.im)))
(-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 y.im x.im))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im (-.f64 x.im x.im)) (*.f64 y.im x.im)))
(-.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re (*.f64 2 (+.f64 y.re y.re))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3)))))
(-.f64 (+.f64 (*.f64 y.im x.im) (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.re (*.f64 x.re 3))))
(-.f64 (+.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 x.re y.re)))
(+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.re y.re)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re)))
(-.f64 (+.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))) (+.f64 (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))
(+.f64 (*.f64 x.re y.re) (-.f64 (*.f64 y.im x.im) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))
(-.f64 (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(-.f64 (*.f64 2 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3))
(-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3))
(-.f64 (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))))
(-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))))
(*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2))))
(*.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 -1 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (-.f64 x.re (-.f64 x.re (*.f64 x.re y.re)))))
(*.f64 -1 (-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re y.re) (-.f64 y.re y.re))))
(*.f64 1 (-.f64 (-.f64 (*.f64 x.re y.re) (-.f64 y.re y.re)) (*.f64 y.im x.im)))
(*.f64 -1 (-.f64 (*.f64 (*.f64 x.im y.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (*.f64 (*.f64 y.im x.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (*.f64 y.im (*.f64 3 x.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 -1 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 y.im x.im) 3))))
(*.f64 1 (-.f64 (+.f64 (*.f64 x.re y.re) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 y.im (*.f64 3 x.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))))
(*.f64 -1 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im x.im)))))
(*.f64 -1 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))))
(*.f64 -1 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re (*.f64 y.re 3)) (+.f64 (*.f64 y.im x.im) (*.f64 x.re (*.f64 2 (+.f64 y.re y.re)))))))
(*.f64 -1 (+.f64 (*.f64 y.re (*.f64 x.re 3)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 y.im x.im) (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2))))))
(*.f64 -1 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(*.f64 1 (+.f64 (*.f64 x.im (neg.f64 y.im)) (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.re y.re))))
(*.f64 1 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re))))
(*.f64 -1 (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)))
(*.f64 -1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3) (*.f64 2 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))))
(*.f64 1 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3)))
(*.f64 -1 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(/.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) -1)
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -2))
(*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 1/2)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 1/2 (-.f64 (*.f64 x.re (+.f64 y.re y.re)) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 1/2 (-.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))))
(*.f64 1/2 (-.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(*.f64 1/2 (+.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 1/2 (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 1/2 (+.f64 y.im y.im))))
(*.f64 1/2 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2)))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 1/2 (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (*.f64 1/2 (+.f64 y.im y.im))))
(*.f64 1/2 (+.f64 (*.f64 y.im (*.f64 (neg.f64 x.im) 2)) (*.f64 x.re (+.f64 y.re y.re))))
(*.f64 1/2 (+.f64 (*.f64 y.im (*.f64 2 (neg.f64 x.im))) (*.f64 x.re (+.f64 y.re y.re))))
(*.f64 1/2 (+.f64 (*.f64 -2 (*.f64 y.im x.im)) (*.f64 x.re (+.f64 y.re y.re))))
(*.f64 2 (/.f64 1/2 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1/2)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))
(*.f64 1/2 (-.f64 (+.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))))
(*.f64 1/2 (-.f64 (+.f64 (*.f64 y.im x.im) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(*.f64 1/2 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im))))))
(*.f64 -1/2 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(*.f64 -1/2 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))))
(*.f64 1/2 (-.f64 (+.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))))))
(/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 1 (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 -1 (+.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (*.f64 x.im (+.f64 y.im y.im))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(neg.f64 (-.f64 (-.f64 x.re x.re) (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))
(neg.f64 (-.f64 (*.f64 y.im x.im) (-.f64 x.re (-.f64 x.re (*.f64 x.re y.re)))))
(/.f64 (-.f64 (-.f64 y.re y.re) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) -1)
(neg.f64 (-.f64 (*.f64 y.im x.im) (-.f64 (*.f64 x.re y.re) (-.f64 y.re y.re))))
(/.f64 (-.f64 (*.f64 (*.f64 x.im y.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)
(neg.f64 (-.f64 (*.f64 (*.f64 y.im x.im) 3) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(-.f64 (*.f64 (*.f64 y.im x.im) -3) (neg.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))))
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im)))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 x.im y.im) 3))) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) -1)
(neg.f64 (-.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))) (-.f64 (*.f64 x.re y.re) (*.f64 (*.f64 y.im x.im) 3))))
(neg.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (-.f64 y.im (+.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 y.im (*.f64 3 x.im))))))
(/.f64 (-.f64 (*.f64 x.im y.im) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))) -1)
(neg.f64 (-.f64 (*.f64 y.im x.im) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (*.f64 x.im (+.f64 y.im y.im)))))
(neg.f64 (-.f64 (*.f64 y.im x.im) (+.f64 (*.f64 x.re y.re) (*.f64 y.im (-.f64 x.im x.im)))))
(/.f64 (-.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) 2))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 x.re (*.f64 y.re 3))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (*.f64 (+.f64 y.re y.re) 2)))) -1)
(neg.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (*.f64 x.re (*.f64 y.re 3)) (+.f64 (*.f64 y.im x.im) (*.f64 x.re (*.f64 2 (+.f64 y.re y.re)))))))
(neg.f64 (+.f64 (*.f64 y.re (*.f64 x.re 3)) (-.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 y.im x.im) (*.f64 (+.f64 y.re y.re) (*.f64 x.re 2))))))
(/.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))) -1)
(neg.f64 (-.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 x.re (+.f64 y.re y.re)))))
(/.f64 (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re (-.f64 (+.f64 y.re y.re) y.re))) 1)
(/.f64 (-.f64 (+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re)))) (+.f64 (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))) (+.f64 (*.f64 x.im y.im) (*.f64 x.re (+.f64 y.re y.re))))) -1)
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 3) (*.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) 2)) -1)
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3) (*.f64 2 (*.f64 2 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))))))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 3) (*.f64 (-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) 4)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) 2))) -1)
(/.f64 (-.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im))) (*.f64 2 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)))) -1)
(-.f64 (neg.f64 (+.f64 (*.f64 x.re y.re) (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (*.f64 y.im x.im)))) (*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) -2))
(/.f64 (-.f64 (+.f64 (*.f64 x.im (+.f64 y.im y.im)) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (*.f64 x.im (*.f64 (+.f64 y.im y.im) 2))) 1)
(+.f64 (*.f64 x.im (+.f64 y.im y.im)) (-.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 x.im (*.f64 2 (+.f64 y.im y.im)))))
(+.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (*.f64 (+.f64 y.im y.im) (-.f64 x.im (*.f64 x.im 2))))
(neg.f64 (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))

eval117.0ms (3.9%)

Compiler

Compiled 12192 to 3534 computations (71% saved)

prune181.0ms (5.9%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New6211622
Fresh000
Picked011
Done134
Total6225627
Error
0b
Counts
627 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
34.0b
(*.f64 x.re y.re)
26.8b
(neg.f64 (*.f64 y.im x.im))
Compiler

Compiled 60 to 40 computations (33.3% saved)

localize18.0ms (0.6%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
0.7b
(-.f64 (*.f64 y.re -3) (*.f64 y.re -4))
Compiler

Compiled 48 to 29 computations (39.6% saved)

series3.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
0.0ms
y.re
@0
(-.f64 (*.f64 y.re -3) (*.f64 y.re -4))
0.0ms
x.re
@0
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
0.0ms
x.re
@-inf
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
0.0ms
y.im
@0
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
0.0ms
x.re
@inf
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))

rewrite50.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
978×rational.json-1
978×rational.json-2
978×rational.json-4
978×rational.json-3
740×rational.json-simplify-19
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01456
18920
234820
3205820
Stop Event
node limit
Counts
2 → 65
Calls
Call 1
Inputs
(-.f64 (*.f64 y.re -3) (*.f64 y.re -4))
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y.re 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 y.re (-.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re -3) (*.f64 y.re 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 y.re)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y.re -1/6) (*.f64 y.re 7))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 y.re -1/6) (-.f64 (/.f64 y.re -1/6) (*.f64 y.re -13)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 4) (*.f64 y.re -3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 3) (/.f64 (+.f64 y.re y.re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 y.re y.re) (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re -12) (-.f64 0 (*.f64 y.re -13)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re 7) (/.f64 y.re -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y.re 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 y.re)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y.re y.re) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 y.re y.re))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (/.f64 y.re -1/6) (*.f64 y.re -8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y.re -2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 y.re -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y.re 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y.re) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 1 y.re) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (-.f64 0 (/.f64 1 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1/2 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 y.re))))) (#(struct:change #<rule egg-rr> (2) ((x . y.re)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re x.re) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re x.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re x.re) (-.f64 (-.f64 y.re y.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (*.f64 -3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 5)) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 0 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y.re (*.f64 -3 x.re)) (*.f64 y.im x.im)) (/.f64 x.re (/.f64 1/4 y.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 y.re x.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 y.re x.re)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)) (*.f64 y.re x.re))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re (+.f64 x.re x.re))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x.re (/.f64 1/4 y.re)) (-.f64 0 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 0 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (*.f64 y.re (+.f64 x.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 -1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2) 1/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))))

simplify70.0ms (2.3%)

Algorithm
egg-herbie
Rules
1430×rational.json-simplify-9
1252×rational.json-simplify-31
1022×rational.json-simplify-23
998×rational.json-simplify-5
892×rational.json-simplify-27
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01703517
14811783
230361779
Stop Event
node limit
Counts
125 → 96
Calls
Call 1
Inputs
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 x.re y.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(*.f64 -1 (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 y.re 0)
(+.f64 y.re (-.f64 y.re y.re))
(+.f64 (*.f64 y.re -3) (*.f64 y.re 4))
(+.f64 0 y.re)
(+.f64 (/.f64 y.re -1/6) (*.f64 y.re 7))
(+.f64 (/.f64 y.re -1/6) (-.f64 (/.f64 y.re -1/6) (*.f64 y.re -13)))
(+.f64 (*.f64 y.re 4) (*.f64 y.re -3))
(+.f64 (*.f64 y.re 3) (/.f64 (+.f64 y.re y.re) -1))
(+.f64 (+.f64 y.re y.re) (neg.f64 y.re))
(+.f64 (*.f64 y.re -12) (-.f64 0 (*.f64 y.re -13)))
(+.f64 (*.f64 y.re 7) (/.f64 y.re -1/6))
(*.f64 y.re 1)
(*.f64 1 y.re)
(*.f64 (neg.f64 y.re) -1)
(*.f64 -1 (neg.f64 y.re))
(*.f64 (+.f64 y.re y.re) 1/2)
(*.f64 1/2 (+.f64 y.re y.re))
(*.f64 1/2 (-.f64 (/.f64 y.re -1/6) (*.f64 y.re -8)))
(*.f64 (*.f64 y.re -2) -1/2)
(*.f64 -1/2 (*.f64 y.re -2))
(/.f64 y.re 1)
(/.f64 1 (/.f64 1 y.re))
(/.f64 (neg.f64 y.re) -1)
(/.f64 -1 (/.f64 -1 y.re))
(/.f64 -1 (*.f64 (/.f64 1 y.re) -1))
(/.f64 -1 (-.f64 0 (/.f64 1 y.re)))
(/.f64 1/2 (/.f64 1/2 y.re))
(neg.f64 (neg.f64 y.re))
(+.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 x.im)))
(+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)))
(+.f64 (*.f64 y.re x.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 y.re x.re) (-.f64 (-.f64 y.re y.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)
(+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0))
(+.f64 0 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 y.re (*.f64 -3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 5)) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 0 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (-.f64 (*.f64 y.re (*.f64 -3 x.re)) (*.f64 y.im x.im)) (/.f64 x.re (/.f64 1/4 y.re)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re x.re))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 y.re x.re)) -1))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 y.re x.re)) -1))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)) (*.f64 y.re x.re))
(+.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re (+.f64 x.re x.re))) -1))
(+.f64 (/.f64 x.re (/.f64 1/4 y.re)) (-.f64 0 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (-.f64 0 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (*.f64 y.re (+.f64 x.re x.re)))
(*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(*.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(*.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) 1/2)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))
(*.f64 1/2 (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))
(*.f64 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2) -1/2)
(*.f64 -1/2 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2))
(/.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(/.f64 1 (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(/.f64 -1 (/.f64 -1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(/.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2)))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2) 1/2) -1)
(neg.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
Outputs
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
y.re
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 x.re y.re)
(*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 x.re y.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re)
(*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re)
(*.f64 y.re x.re)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (*.f64 y.im x.im))
(neg.f64 (*.f64 y.im x.im))
(*.f64 y.im (neg.f64 x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 (-.f64 (*.f64 -3 y.re) (*.f64 -4 y.re)) x.re) (*.f64 -1 (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 y.re 0)
y.re
(+.f64 y.re (-.f64 y.re y.re))
y.re
(+.f64 (*.f64 y.re -3) (*.f64 y.re 4))
y.re
(+.f64 0 y.re)
y.re
(+.f64 (/.f64 y.re -1/6) (*.f64 y.re 7))
(+.f64 (*.f64 y.re -6) (*.f64 y.re 7))
(+.f64 (/.f64 y.re -1/6) (-.f64 (/.f64 y.re -1/6) (*.f64 y.re -13)))
(+.f64 (/.f64 y.re -1/6) (*.f64 y.re 7))
(+.f64 (*.f64 y.re -6) (*.f64 y.re 7))
(+.f64 (*.f64 y.re 4) (*.f64 y.re -3))
y.re
(+.f64 (*.f64 y.re 3) (/.f64 (+.f64 y.re y.re) -1))
(+.f64 (*.f64 y.re 3) (neg.f64 (+.f64 y.re y.re)))
(+.f64 (*.f64 y.re 3) (*.f64 y.re -2))
(+.f64 (+.f64 y.re y.re) (neg.f64 y.re))
y.re
(+.f64 (*.f64 y.re -12) (-.f64 0 (*.f64 y.re -13)))
y.re
(+.f64 (*.f64 y.re 7) (/.f64 y.re -1/6))
(+.f64 (/.f64 y.re -1/6) (*.f64 y.re 7))
(+.f64 (*.f64 y.re -6) (*.f64 y.re 7))
(*.f64 y.re 1)
y.re
(*.f64 1 y.re)
y.re
(*.f64 (neg.f64 y.re) -1)
y.re
(*.f64 -1 (neg.f64 y.re))
y.re
(*.f64 (+.f64 y.re y.re) 1/2)
y.re
(*.f64 1/2 (+.f64 y.re y.re))
y.re
(*.f64 1/2 (-.f64 (/.f64 y.re -1/6) (*.f64 y.re -8)))
y.re
(*.f64 (*.f64 y.re -2) -1/2)
y.re
(*.f64 -1/2 (*.f64 y.re -2))
y.re
(/.f64 y.re 1)
y.re
(/.f64 1 (/.f64 1 y.re))
y.re
(/.f64 (neg.f64 y.re) -1)
y.re
(/.f64 -1 (/.f64 -1 y.re))
y.re
(/.f64 -1 (*.f64 (/.f64 1 y.re) -1))
y.re
(/.f64 -1 (-.f64 0 (/.f64 1 y.re)))
y.re
(/.f64 1/2 (/.f64 1/2 y.re))
y.re
(neg.f64 (neg.f64 y.re))
y.re
(+.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re x.re) (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re x.re) (-.f64 (-.f64 x.re x.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 x.re x.re) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 y.re x.re) (-.f64 (-.f64 y.re y.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 0))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 0 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re (*.f64 -3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 5)) (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 y.re (*.f64 -3 x.re)) (-.f64 (*.f64 y.re (*.f64 x.re 5)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(-.f64 (*.f64 y.re (+.f64 (*.f64 -3 x.re) (*.f64 x.re 5))) (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 0 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (/.f64 x.re 1/4)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (-.f64 (*.f64 y.re (*.f64 -3 x.re)) (*.f64 y.im x.im)) (/.f64 x.re (/.f64 1/4 y.re)))
(+.f64 (-.f64 (*.f64 y.re (*.f64 -3 x.re)) (*.f64 y.im x.im)) (/.f64 y.re (/.f64 1/4 x.re)))
(+.f64 (*.f64 y.re (*.f64 -3 x.re)) (-.f64 (*.f64 y.re (/.f64 x.re 1/4)) (*.f64 y.im x.im)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 (-.f64 (-.f64 y.im y.im) (*.f64 y.re x.re)) -1))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (neg.f64 (-.f64 (-.f64 y.im y.im) (*.f64 y.re x.re))))
(+.f64 (-.f64 (*.f64 y.re x.re) (-.f64 y.im y.im)) (neg.f64 (*.f64 y.im x.im)))
(+.f64 (-.f64 y.im (-.f64 y.im (*.f64 y.re x.re))) (*.f64 y.im (neg.f64 x.im)))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 (-.f64 (-.f64 x.im x.im) (*.f64 y.re x.re)) -1))
(+.f64 (*.f64 y.im (neg.f64 x.im)) (neg.f64 (-.f64 (-.f64 x.im x.im) (*.f64 y.re x.re))))
(+.f64 (-.f64 x.im (-.f64 x.im (*.f64 y.re x.re))) (neg.f64 (*.f64 y.im x.im)))
(+.f64 (*.f64 x.im 0) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (-.f64 (*.f64 x.re (-.f64 y.re y.re)) (*.f64 y.im x.im)) (*.f64 y.re x.re))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re (+.f64 x.re x.re))) -1))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(+.f64 (/.f64 x.re (/.f64 1/4 y.re)) (-.f64 0 (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(+.f64 (*.f64 y.re (+.f64 x.re x.re)) (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3)))))
(-.f64 (*.f64 y.re (/.f64 x.re 1/4)) (+.f64 (*.f64 y.im x.im) (*.f64 y.re (*.f64 x.re 3))))
(+.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) (*.f64 y.re x.re)))
(+.f64 (*.f64 y.im x.im) (-.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (*.f64 y.re x.re)))
(+.f64 (*.f64 -2 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (-.f64 0 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (*.f64 y.re (+.f64 x.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2) 1/2)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 1/2 (-.f64 (*.f64 y.re (+.f64 x.re x.re)) (*.f64 x.im (+.f64 y.im y.im))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2) -1/2)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(*.f64 -1/2 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 1 (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 -1 (/.f64 1 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 -1 (/.f64 -1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 1 (*.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) 2)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 1/2 (/.f64 -1 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) 2) 1/2) -1)
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))
(neg.f64 (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))
(+.f64 (*.f64 -1 (*.f64 y.im x.im)) (*.f64 (-.f64 (*.f64 y.re -3) (*.f64 y.re -4)) x.re))
(-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))

eval19.0ms (0.6%)

Compiler

Compiled 1142 to 447 computations (60.9% saved)

prune21.0ms (0.7%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New96096
Fresh000
Picked011
Done044
Total965101
Error
0b
Counts
101 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
0.0b
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
34.0b
(*.f64 x.re y.re)
26.8b
(neg.f64 (*.f64 y.im x.im))
Compiler

Compiled 60 to 40 computations (33.3% saved)

regimes44.0ms (1.4%)

Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re (-.f64 (*.f64 y.re -3) (*.f64 y.re -4))) (*.f64 y.im x.im))
(+.f64 (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re (-.f64 (+.f64 y.re (*.f64 y.re 3)) (*.f64 y.re 3))))
Outputs
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
Calls

7 calls:

15.0ms
y.im
6.0ms
x.re
5.0ms
y.re
4.0ms
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
4.0ms
x.im
Results
ErrorSegmentsBranch
0.0b1x.re
0.0b1x.im
0.0b1y.re
0.0b1y.im
0.0b1(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b1(*.f64 x.re y.re)
0.0b1(*.f64 x.im y.im)
Compiler

Compiled 105 to 61 computations (41.9% saved)

regimes25.0ms (0.8%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Calls

7 calls:

5.0ms
y.im
3.0ms
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
3.0ms
x.re
3.0ms
x.im
3.0ms
y.re
Results
ErrorSegmentsBranch
0.0b1x.re
0.0b1x.im
0.0b1y.re
0.0b1y.im
0.0b1(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
0.0b1(*.f64 x.re y.re)
0.0b1(*.f64 x.im y.im)
Compiler

Compiled 63 to 42 computations (33.3% saved)

regimes95.0ms (3.1%)

Accuracy

Total -46.6b remaining (-347.8%)

Threshold costs -46.6b (-347.8%)

Counts
2 → 5
Calls
Call 1
Inputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 y.im x.im))
Outputs
(*.f64 x.re y.re)
(neg.f64 (*.f64 y.im x.im))
(*.f64 x.re y.re)
(neg.f64 (*.f64 y.im x.im))
(*.f64 x.re y.re)
Calls

5 calls:

38.0ms
x.re
19.0ms
y.im
14.0ms
y.re
14.0ms
(*.f64 x.re y.re)
9.0ms
x.im
Results
ErrorSegmentsBranch
19.0b3x.re
16.1b3x.im
16.9b5y.re
15.3b7y.im
13.4b5(*.f64 x.re y.re)
Compiler

Compiled 38 to 28 computations (26.3% saved)

bsearch42.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
8.0ms
4.903809004084651e+51
1.436266271597626e+52
10.0ms
9.38096330161446e-18
1.5196628829476105e-16
11.0ms
3.9310774629129244e-80
9.487813190048326e-79
12.0ms
-278192350.4127462
-612999.269354292
Results
37.0ms432×body256valid
Compiler

Compiled 423 to 337 computations (20.3% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
031166
Stop Event
done
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(if (<=.f64 (*.f64 x.re y.re) -3000000) (*.f64 x.re y.re) (if (<=.f64 (*.f64 x.re y.re) 8944445712918811/66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216768) (neg.f64 (*.f64 y.im x.im)) (if (<=.f64 (*.f64 x.re y.re) 370153975266643/10141204801825835211973625643008) (*.f64 x.re y.re) (if (<=.f64 (*.f64 x.re y.re) 5499999999999999962715217708988953870539396430692352) (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re y.re)))))
(*.f64 x.re y.re)
Outputs
(+.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.re y.re) (*.f64 x.im (+.f64 y.im y.im))))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(if (<=.f64 (*.f64 x.re y.re) -3000000) (*.f64 x.re y.re) (if (<=.f64 (*.f64 x.re y.re) 8944445712918811/66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216768) (neg.f64 (*.f64 y.im x.im)) (if (<=.f64 (*.f64 x.re y.re) 370153975266643/10141204801825835211973625643008) (*.f64 x.re y.re) (if (<=.f64 (*.f64 x.re y.re) 5499999999999999962715217708988953870539396430692352) (neg.f64 (*.f64 y.im x.im)) (*.f64 x.re y.re)))))
(*.f64 x.re y.re)
Compiler

Compiled 80 to 41 computations (48.8% saved)

soundness0.0ms (0%)

end55.0ms (1.8%)

Remove

(sort x.im y.im)

(sort x.re y.re)

Compiler

Compiled 136 to 65 computations (52.2% saved)

Profiling

Loading profile data...