Anisotropic x16 LOD (line direction, v)

Time bar (total: 6.0s)

analyze2.2s (37.2%)

Memory
66.1MiB live, 4 087.5MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
0%0%0%100%0%0%0%2
0%0%0%100%0%0%0%3
0%0%0%100%0%0%0%4
0%0%0%100%0%0%0%5
0%0%0%100%0%0%0%6
6.3%0%0%100%0%0%0%7
6.3%0%0%100%0%0%0%8
6.3%0%0%100%0%0%0%9
6.3%0%0%100%0%0%0%10
Compiler

Compiled 194 to 61 computations (68.6% saved)

sample3.6s (60%)

Memory
32.8MiB live, 4 944.5MiB allocated
Samples
2.8s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.9s
ival-mult: 628.0ms (33.7% of total)
ival-<=: 245.0ms (13.2% of total)
ival-fabs: 188.0ms (10.1% of total)
const: 145.0ms (7.8% of total)
ival-add: 138.0ms (7.4% of total)
ival-floor: 117.0ms (6.3% of total)
ival-sqrt: 92.0ms (4.9% of total)
ival-fmax: 65.0ms (3.5% of total)
ival-and: 62.0ms (3.3% of total)
ival-div: 54.0ms (2.9% of total)
ival-if: 45.0ms (2.4% of total)
ival-==: 42.0ms (2.3% of total)
ival->=: 21.0ms (1.1% of total)
exact: 18.0ms (1% of total)
ival-assert: 3.0ms (0.2% of total)
Bogosity

preprocess91.0ms (1.5%)

Memory
-8.9MiB live, 150.0MiB allocated
Algorithm
egg-herbie
Rules
2 664×unsub-neg
936×neg-mul-1
880×neg-sub0
740×associate-*r*
644×distribute-lft-neg-out
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03504929
19054743
221904743
336504743
462694743
026134
169130
2147130
3205130
4215130
0215124
Stop Event
iter limit
saturated
node limit
Calls
Call 1
Inputs
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
Outputs
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>=.f32 (fma.f32 (floor.f32 w) (*.f32 dX.u (*.f32 (floor.f32 w) dX.u)) (*.f32 (floor.f32 h) (*.f32 (floor.f32 h) (*.f32 dX.v dX.v)))) (fma.f32 (floor.f32 h) (*.f32 (floor.f32 h) (*.f32 dY.v dY.v)) (*.f32 (*.f32 (floor.f32 w) dY.u) (*.f32 (floor.f32 w) dY.u)))) (/.f32 (*.f32 (floor.f32 h) dX.v) (sqrt.f32 (fmax.f32 (fma.f32 (floor.f32 w) (*.f32 dX.u (*.f32 (floor.f32 w) dX.u)) (*.f32 (floor.f32 h) (*.f32 (floor.f32 h) (*.f32 dX.v dX.v)))) (fma.f32 (floor.f32 h) (*.f32 (floor.f32 h) (*.f32 dY.v dY.v)) (*.f32 (*.f32 (floor.f32 w) dY.u) (*.f32 (floor.f32 w) dY.u)))))) (/.f32 (*.f32 (floor.f32 h) dY.v) (sqrt.f32 (fmax.f32 (fma.f32 (floor.f32 w) (*.f32 dX.u (*.f32 (floor.f32 w) dX.u)) (*.f32 (floor.f32 h) (*.f32 (floor.f32 h) (*.f32 dX.v dX.v)))) (fma.f32 (floor.f32 h) (*.f32 (floor.f32 h) (*.f32 dY.v dY.v)) (*.f32 (*.f32 (floor.f32 w) dY.u) (*.f32 (floor.f32 w) dY.u)))))))
Call 2
Inputs
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dY.v)))
(if (>= (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) (neg dX.v))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) (neg dY.v))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(neg (if (>= (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dY.v))))
(neg (if (>= (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) (neg dX.v))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) (neg dY.v)))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(if (>= (+ (* (* (floor h) dX.u) (* (floor h) dX.u)) (* (* (floor w) dX.v) (* (floor w) dX.v))) (+ (* (* (floor h) dY.u) (* (floor h) dY.u)) (* (* (floor w) dY.v) (* (floor w) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor h) dX.u) (* (floor h) dX.u)) (* (* (floor w) dX.v) (* (floor w) dX.v))) (+ (* (* (floor h) dY.u) (* (floor h) dY.u)) (* (* (floor w) dY.v) (* (floor w) dY.v)))))) (* (floor w) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor h) dX.u) (* (floor h) dX.u)) (* (* (floor w) dX.v) (* (floor w) dX.v))) (+ (* (* (floor h) dY.u) (* (floor h) dY.u)) (* (* (floor w) dY.v) (* (floor w) dY.v)))))) (* (floor w) dY.v)))
(if (>= (+ (* (* (floor dX.u) w) (* (floor dX.u) w)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dX.u) dY.u) (* (floor dX.u) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.u) w) (* (floor dX.u) w)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dX.u) dY.u) (* (floor dX.u) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.u) w) (* (floor dX.u) w)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dX.u) dY.u) (* (floor dX.u) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor dX.v) dX.u) (* (floor dX.v) dX.u)) (* (* (floor h) w) (* (floor h) w))) (+ (* (* (floor dX.v) dY.u) (* (floor dX.v) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.v) dX.u) (* (floor dX.v) dX.u)) (* (* (floor h) w) (* (floor h) w))) (+ (* (* (floor dX.v) dY.u) (* (floor dX.v) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) w)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.v) dX.u) (* (floor dX.v) dX.u)) (* (* (floor h) w) (* (floor h) w))) (+ (* (* (floor dX.v) dY.u) (* (floor dX.v) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor dY.u) dX.u) (* (floor dY.u) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.u) w) (* (floor dY.u) w)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.u) dX.u) (* (floor dY.u) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.u) w) (* (floor dY.u) w)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.u) dX.u) (* (floor dY.u) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.u) w) (* (floor dY.u) w)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor dY.v) dX.u) (* (floor dY.v) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.v) dY.u) (* (floor dY.v) dY.u)) (* (* (floor h) w) (* (floor h) w)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.v) dX.u) (* (floor dY.v) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.v) dY.u) (* (floor dY.v) dY.u)) (* (* (floor h) w) (* (floor h) w)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.v) dX.u) (* (floor dY.v) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.v) dY.u) (* (floor dY.v) dY.u)) (* (* (floor h) w) (* (floor h) w)))))) (* (floor h) w)))
(if (>= (+ (* (* (floor maxAniso) dX.u) (* (floor maxAniso) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor maxAniso) dY.u) (* (floor maxAniso) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor maxAniso) dX.u) (* (floor maxAniso) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor maxAniso) dY.u) (* (floor maxAniso) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor maxAniso) dX.u) (* (floor maxAniso) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor maxAniso) dY.u) (* (floor maxAniso) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dX.u) dX.v) (* (floor dX.u) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.u) dY.v) (* (floor dX.u) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dX.u) dX.v) (* (floor dX.u) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.u) dY.v) (* (floor dX.u) dY.v)))))) (* (floor dX.u) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dX.u) dX.v) (* (floor dX.u) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.u) dY.v) (* (floor dX.u) dY.v)))))) (* (floor dX.u) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dX.v) h) (* (floor dX.v) h))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.v) dY.v) (* (floor dX.v) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dX.v) h) (* (floor dX.v) h))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.v) dY.v) (* (floor dX.v) dY.v)))))) (* (floor dX.v) h)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dX.v) h) (* (floor dX.v) h))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.v) dY.v) (* (floor dX.v) dY.v)))))) (* (floor dX.v) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.u) dX.v) (* (floor dY.u) dX.v))) (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dY.u) dY.v) (* (floor dY.u) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.u) dX.v) (* (floor dY.u) dX.v))) (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dY.u) dY.v) (* (floor dY.u) dY.v)))))) (* (floor dY.u) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.u) dX.v) (* (floor dY.u) dX.v))) (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dY.u) dY.v) (* (floor dY.u) dY.v)))))) (* (floor dY.u) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.v) dX.v) (* (floor dY.v) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dY.v) h) (* (floor dY.v) h)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.v) dX.v) (* (floor dY.v) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dY.v) h) (* (floor dY.v) h)))))) (* (floor dY.v) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.v) dX.v) (* (floor dY.v) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dY.v) h) (* (floor dY.v) h)))))) (* (floor dY.v) h)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor maxAniso) dX.v) (* (floor maxAniso) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor maxAniso) dY.v) (* (floor maxAniso) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor maxAniso) dX.v) (* (floor maxAniso) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor maxAniso) dY.v) (* (floor maxAniso) dY.v)))))) (* (floor maxAniso) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor maxAniso) dX.v) (* (floor maxAniso) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor maxAniso) dY.v) (* (floor maxAniso) dY.v)))))) (* (floor maxAniso) dY.v)))
(if (>= (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dX.u) (* (floor h) dX.u))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dX.u) (* (floor h) dX.u))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.u)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dX.u) (* (floor h) dX.u))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.u) (* (floor h) dX.u)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.u) (* (floor h) dX.u)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.u) (* (floor h) dX.u)))))) (* (floor h) dX.u)))
(if (>= (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.u) (* (floor h) dY.u))) (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.u) (* (floor h) dY.u))) (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.u)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.u) (* (floor h) dY.u))) (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)))))) (* (floor h) dY.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)))))) (* (floor h) dX.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) maxAniso)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dY.u) (* (floor h) dY.u)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dY.u) (* (floor h) dY.u)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dY.u) (* (floor h) dY.u)))))) (* (floor h) dY.u)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso)))))) (* (floor h) maxAniso)))
Outputs
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor (neg w)) (* (floor (neg w)) (* dX.u dX.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor (neg w)) (* (floor (neg w)) (* dY.u dY.u))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor (neg w)) (* (floor (neg w)) (* dX.u dX.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor (neg w)) (* (floor (neg w)) (* dY.u dY.u))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor (neg w)) (* (floor (neg w)) (* dX.u dX.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor (neg w)) (* (floor (neg w)) (* dY.u dY.u))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor (neg h)) (* (floor (neg h)) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor (neg h)) (* (floor (neg h)) (* dY.v dY.v))))) (/ (* dX.v (floor (neg h))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor (neg h)) (* (floor (neg h)) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor (neg h)) (* (floor (neg h)) (* dY.v dY.v))))))) (/ (* dY.v (floor (neg h))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor (neg h)) (* (floor (neg h)) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor (neg h)) (* (floor (neg h)) (* dY.v dY.v))))))))
(if (>= (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) (neg dX.v))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) (neg dX.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) (neg dY.v))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) (neg dY.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(neg (if (>= (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor (neg w)) dX.u) (* (floor (neg w)) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor (neg w)) dY.u) (* (floor (neg w)) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor (neg w)) (* (floor (neg w)) (* dX.u dX.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor (neg w)) (* (floor (neg w)) (* dY.u dY.u))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor (neg w)) (* (floor (neg w)) (* dX.u dX.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor (neg w)) (* (floor (neg w)) (* dY.u dY.u))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor (neg w)) (* (floor (neg w)) (* dX.u dX.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor (neg w)) (* (floor (neg w)) (* dY.u dY.u)))))))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor (neg h)) dX.v) (* (floor (neg h)) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor (neg h)) dY.v) (* (floor (neg h)) dY.v)))))) (* (floor (neg h)) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor (neg h)) (* (floor (neg h)) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor (neg h)) (* (floor (neg h)) (* dY.v dY.v))))) (/ (* dX.v (floor (neg h))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor (neg h)) (* (floor (neg h)) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor (neg h)) (* (floor (neg h)) (* dY.v dY.v))))))) (/ (* dY.v (floor (neg h))) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor (neg h)) (* (floor (neg h)) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor (neg h)) (* (floor (neg h)) (* dY.v dY.v)))))))))
(neg (if (>= (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) (neg dX.u)) (* (floor w) (neg dX.u))) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))))))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) (neg dX.v))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) (neg dX.v)) (* (floor h) (neg dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) (neg dX.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))))))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) (neg dY.u)) (* (floor w) (neg dY.u))) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))))))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) (neg dY.v)) (* (floor h) (neg dY.v))))))) (* (floor h) (neg dY.v)))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) (neg dY.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))))))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v))))
(neg (if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))))))))
(if (>= (+ (* (* (floor h) dX.u) (* (floor h) dX.u)) (* (* (floor w) dX.v) (* (floor w) dX.v))) (+ (* (* (floor h) dY.u) (* (floor h) dY.u)) (* (* (floor w) dY.v) (* (floor w) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor h) dX.u) (* (floor h) dX.u)) (* (* (floor w) dX.v) (* (floor w) dX.v))) (+ (* (* (floor h) dY.u) (* (floor h) dY.u)) (* (* (floor w) dY.v) (* (floor w) dY.v)))))) (* (floor w) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor h) dX.u) (* (floor h) dX.u)) (* (* (floor w) dX.v) (* (floor w) dX.v))) (+ (* (* (floor h) dY.u) (* (floor h) dY.u)) (* (* (floor w) dY.v) (* (floor w) dY.v)))))) (* (floor w) dY.v)))
(if (>= (+ (* (floor h) (* dX.u (* dX.u (floor h)))) (* (floor w) (* dX.v (* (floor w) dX.v)))) (+ (* (floor h) (* (floor h) (* dY.u dY.u))) (* (* (floor w) dY.v) (* (floor w) dY.v)))) (/ (* (floor w) dX.v) (sqrt (fmax (+ (* (floor h) (* dX.u (* dX.u (floor h)))) (* (floor w) (* dX.v (* (floor w) dX.v)))) (+ (* (floor h) (* (floor h) (* dY.u dY.u))) (* (* (floor w) dY.v) (* (floor w) dY.v)))))) (/ (* (floor w) dY.v) (sqrt (fmax (+ (* (floor h) (* dX.u (* dX.u (floor h)))) (* (floor w) (* dX.v (* (floor w) dX.v)))) (+ (* (floor h) (* (floor h) (* dY.u dY.u))) (* (* (floor w) dY.v) (* (floor w) dY.v)))))))
(if (>= (+ (* (* (floor dX.u) w) (* (floor dX.u) w)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dX.u) dY.u) (* (floor dX.u) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.u) w) (* (floor dX.u) w)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dX.u) dY.u) (* (floor dX.u) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.u) w) (* (floor dX.u) w)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dX.u) dY.u) (* (floor dX.u) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor dX.u) (* w (* w (floor dX.u))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dX.u) (* dY.u (* dY.u (floor dX.u)))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor dX.u) (* w (* w (floor dX.u))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dX.u) (* dY.u (* dY.u (floor dX.u)))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor dX.u) (* w (* w (floor dX.u))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dX.u) (* dY.u (* dY.u (floor dX.u)))))))))
(if (>= (+ (* (* (floor dX.v) dX.u) (* (floor dX.v) dX.u)) (* (* (floor h) w) (* (floor h) w))) (+ (* (* (floor dX.v) dY.u) (* (floor dX.v) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.v) dX.u) (* (floor dX.v) dX.u)) (* (* (floor h) w) (* (floor h) w))) (+ (* (* (floor dX.v) dY.u) (* (floor dX.v) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) w)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dX.v) dX.u) (* (floor dX.v) dX.u)) (* (* (floor h) w) (* (floor h) w))) (+ (* (* (floor dX.v) dY.u) (* (floor dX.v) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor dX.v) (* dX.u (* dX.u (floor dX.v)))) (* (floor h) (* w (* w (floor h))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dX.v) (* dY.u (* dY.u (floor dX.v)))))) (/ (* w (floor h)) (sqrt (fmax (+ (* (floor dX.v) (* dX.u (* dX.u (floor dX.v)))) (* (floor h) (* w (* w (floor h))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dX.v) (* dY.u (* dY.u (floor dX.v)))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor dX.v) (* dX.u (* dX.u (floor dX.v)))) (* (floor h) (* w (* w (floor h))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dX.v) (* dY.u (* dY.u (floor dX.v)))))))))
(if (>= (+ (* (* (floor dY.u) dX.u) (* (floor dY.u) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.u) w) (* (floor dY.u) w)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.u) dX.u) (* (floor dY.u) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.u) w) (* (floor dY.u) w)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.u) dX.u) (* (floor dY.u) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.u) w) (* (floor dY.u) w)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* dX.u (* (floor dY.u) (* dX.u (floor dY.u))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dY.u) (* (floor dY.u) (* w w))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* dX.u (* (floor dY.u) (* dX.u (floor dY.u))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dY.u) (* (floor dY.u) (* w w))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* dX.u (* (floor dY.u) (* dX.u (floor dY.u))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor dY.u) (* (floor dY.u) (* w w))))))))
(if (>= (+ (* (* (floor dY.v) dX.u) (* (floor dY.v) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.v) dY.u) (* (floor dY.v) dY.u)) (* (* (floor h) w) (* (floor h) w)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.v) dX.u) (* (floor dY.v) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.v) dY.u) (* (floor dY.v) dY.u)) (* (* (floor h) w) (* (floor h) w)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor dY.v) dX.u) (* (floor dY.v) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor dY.v) dY.u) (* (floor dY.v) dY.u)) (* (* (floor h) w) (* (floor h) w)))))) (* (floor h) w)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor dY.v) (* dX.u (* dX.u (floor dY.v))))) (+ (* (floor h) (* w (* w (floor h)))) (* (floor dY.v) (* dY.u (* dY.u (floor dY.v)))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor dY.v) (* dX.u (* dX.u (floor dY.v))))) (+ (* (floor h) (* w (* w (floor h)))) (* (floor dY.v) (* dY.u (* dY.u (floor dY.v)))))))) (/ (* w (floor h)) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor dY.v) (* dX.u (* dX.u (floor dY.v))))) (+ (* (floor h) (* w (* w (floor h)))) (* (floor dY.v) (* dY.u (* dY.u (floor dY.v)))))))))
(if (>= (+ (* (* (floor maxAniso) dX.u) (* (floor maxAniso) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor maxAniso) dY.u) (* (floor maxAniso) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor maxAniso) dX.u) (* (floor maxAniso) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor maxAniso) dY.u) (* (floor maxAniso) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor maxAniso) dX.u) (* (floor maxAniso) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor maxAniso) dY.u) (* (floor maxAniso) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor maxAniso) (* dX.u (* dX.u (floor maxAniso))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (* dY.u (floor maxAniso)) (* dY.u (floor maxAniso))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor maxAniso) (* dX.u (* dX.u (floor maxAniso))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (* dY.u (floor maxAniso)) (* dY.u (floor maxAniso))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor maxAniso) (* dX.u (* dX.u (floor maxAniso))))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (* dY.u (floor maxAniso)) (* dY.u (floor maxAniso))))))))
(if (>= (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dX.u) dX.v) (* (floor dX.u) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.u) dY.v) (* (floor dX.u) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dX.u) dX.v) (* (floor dX.u) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.u) dY.v) (* (floor dX.u) dY.v)))))) (* (floor dX.u) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dX.u) dX.v) (* (floor dX.u) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.u) dY.v) (* (floor dX.u) dY.v)))))) (* (floor dX.u) dY.v)))
(if (>= (+ (* (floor w) (* h (* (floor w) h))) (* (floor dX.u) (* dX.v (* dX.v (floor dX.u))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor dX.u) (* dY.v (* dY.v (floor dX.u)))))) (/ (* dX.v (floor dX.u)) (sqrt (fmax (+ (* (floor w) (* h (* (floor w) h))) (* (floor dX.u) (* dX.v (* dX.v (floor dX.u))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor dX.u) (* dY.v (* dY.v (floor dX.u)))))))) (/ (* dY.v (floor dX.u)) (sqrt (fmax (+ (* (floor w) (* h (* (floor w) h))) (* (floor dX.u) (* dX.v (* dX.v (floor dX.u))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor dX.u) (* dY.v (* dY.v (floor dX.u)))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dX.v) h) (* (floor dX.v) h))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.v) dY.v) (* (floor dX.v) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dX.v) h) (* (floor dX.v) h))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.v) dY.v) (* (floor dX.v) dY.v)))))) (* (floor dX.v) h)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dX.v) h) (* (floor dX.v) h))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dX.v) dY.v) (* (floor dX.v) dY.v)))))) (* (floor dX.v) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* h (floor dX.v)) (* h (floor dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor dX.v) (* dY.v (* dY.v (floor dX.v)))))) (/ (* h (floor dX.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* h (floor dX.v)) (* h (floor dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor dX.v) (* dY.v (* dY.v (floor dX.v)))))))) (/ (* dY.v (floor dX.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* h (floor dX.v)) (* h (floor dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor dX.v) (* dY.v (* dY.v (floor dX.v)))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.u) dX.v) (* (floor dY.u) dX.v))) (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dY.u) dY.v) (* (floor dY.u) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.u) dX.v) (* (floor dY.u) dX.v))) (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dY.u) dY.v) (* (floor dY.u) dY.v)))))) (* (floor dY.u) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.u) dX.v) (* (floor dY.u) dX.v))) (+ (* (* (floor w) h) (* (floor w) h)) (* (* (floor dY.u) dY.v) (* (floor dY.u) dY.v)))))) (* (floor dY.u) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor dY.u) (* dX.v (* dX.v (floor dY.u))))) (+ (* (floor w) (* h (* (floor w) h))) (* (floor dY.u) (* dY.v (* dY.v (floor dY.u)))))) (/ (* dX.v (floor dY.u)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor dY.u) (* dX.v (* dX.v (floor dY.u))))) (+ (* (floor w) (* h (* (floor w) h))) (* (floor dY.u) (* dY.v (* dY.v (floor dY.u)))))))) (/ (* dY.v (floor dY.u)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor dY.u) (* dX.v (* dX.v (floor dY.u))))) (+ (* (floor w) (* h (* (floor w) h))) (* (floor dY.u) (* dY.v (* dY.v (floor dY.u)))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.v) dX.v) (* (floor dY.v) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dY.v) h) (* (floor dY.v) h)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.v) dX.v) (* (floor dY.v) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dY.v) h) (* (floor dY.v) h)))))) (* (floor dY.v) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor dY.v) dX.v) (* (floor dY.v) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor dY.v) h) (* (floor dY.v) h)))))) (* (floor dY.v) h)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor dY.v) (* dX.v (* dX.v (floor dY.v))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* h (floor dY.v)) (* h (floor dY.v))))) (/ (* dX.v (floor dY.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor dY.v) (* dX.v (* dX.v (floor dY.v))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* h (floor dY.v)) (* h (floor dY.v))))))) (/ (* h (floor dY.v)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor dY.v) (* dX.v (* dX.v (floor dY.v))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* h (floor dY.v)) (* h (floor dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor maxAniso) dX.v) (* (floor maxAniso) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor maxAniso) dY.v) (* (floor maxAniso) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor maxAniso) dX.v) (* (floor maxAniso) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor maxAniso) dY.v) (* (floor maxAniso) dY.v)))))) (* (floor maxAniso) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor maxAniso) dX.v) (* (floor maxAniso) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor maxAniso) dY.v) (* (floor maxAniso) dY.v)))))) (* (floor maxAniso) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor maxAniso) (* dX.v (* dX.v (floor maxAniso))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor maxAniso) (* dY.v (* dY.v (floor maxAniso)))))) (/ (* dX.v (floor maxAniso)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor maxAniso) (* dX.v (* dX.v (floor maxAniso))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor maxAniso) (* dY.v (* dY.v (floor maxAniso)))))))) (/ (* dY.v (floor maxAniso)) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor maxAniso) (* dX.v (* dX.v (floor maxAniso))))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor maxAniso) (* dY.v (* dY.v (floor maxAniso)))))))))
(if (>= (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dX.u) (* (floor h) dX.u))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dX.u) (* (floor h) dX.u))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.u)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dX.u) (* (floor h) dX.u))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* dX.u (* dX.u (floor h)))) (* (floor w) (* dX.v (* (floor w) dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* dX.u (floor h)) (sqrt (fmax (+ (* (floor h) (* dX.u (* dX.u (floor h)))) (* (floor w) (* dX.v (* (floor w) dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* dX.u (* dX.u (floor h)))) (* (floor w) (* dX.v (* (floor w) dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.u) (* (floor w) dY.u))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.u) (* (floor w) dY.u))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.u) (* (floor w) dY.u))) (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.u) (* (floor h) dX.u)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.u) (* (floor h) dX.u)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.u) (* (floor h) dX.u)))))) (* (floor h) dX.u)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.v) (* (floor w) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dX.u (* dX.u (floor h)))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.v) (* (floor w) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dX.u (* dX.u (floor h)))))))) (/ (* dX.u (floor h)) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.v) (* (floor w) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dX.u (* dX.u (floor h)))))))))
(if (>= (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor w) (* maxAniso (* (floor w) maxAniso)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor w) (* maxAniso (* (floor w) maxAniso)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (floor w) (* maxAniso (* (floor w) maxAniso)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.u) (* (floor h) dY.u))) (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.u) (* (floor h) dY.u))) (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.u)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.u) (* (floor h) dY.u))) (+ (* (* (floor w) dX.v) (* (floor w) dX.v)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dY.u dY.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor w) (* dX.v (* (floor w) dX.v))))) (/ (* (floor h) dY.u) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dY.u dY.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor w) (* dX.v (* (floor w) dX.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dY.u dY.u)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor w) (* dX.v (* (floor w) dX.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)))))) (* (floor h) dY.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dY.v) (* (floor h) dY.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dX.v) (* (floor h) dX.v)))))) (* (floor h) dX.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))) (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.u) (* (floor w) dY.u)))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))) (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.u) (* (floor w) dY.u)))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* dY.v (* (floor h) dY.v)))) (+ (* (floor h) (* (floor h) (* dX.v dX.v))) (* (* (floor w) dY.u) (* (floor w) dY.u)))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) maxAniso)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* maxAniso (* (floor h) maxAniso)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))) (/ (* (floor h) maxAniso) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* maxAniso (* (floor h) maxAniso)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* maxAniso (* (floor h) maxAniso)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* dY.v (* (floor h) dY.v))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dY.u) (* (floor h) dY.u)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dY.u) (* (floor h) dY.u)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.v) (* (floor w) dY.v)) (* (* (floor h) dY.u) (* (floor h) dY.u)))))) (* (floor h) dY.u)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (floor h) (* (floor h) (* dY.u dY.u))) (* (* (floor w) dY.v) (* (floor w) dY.v)))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (floor h) (* (floor h) (* dY.u dY.u))) (* (* (floor w) dY.v) (* (floor w) dY.v)))))) (/ (* (floor h) dY.u) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (floor h) (* (floor h) (* dY.u dY.u))) (* (* (floor w) dY.v) (* (floor w) dY.v)))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dY.v) (* (floor h) dY.v)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) maxAniso) (* (floor w) maxAniso)) (* (* (floor h) dY.v) (* (floor h) dY.v)))))) (* (floor h) dY.v)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor w) (* maxAniso (* (floor w) maxAniso))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor w) (* maxAniso (* (floor w) maxAniso))))))) (/ (* (floor h) dY.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (floor h) (* dY.v (* (floor h) dY.v))) (* (floor w) (* maxAniso (* (floor w) maxAniso))))))))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso)))) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso)))))) (* (floor h) dX.v)) (* (/ 1 (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (* (floor h) dX.v) (* (floor h) dX.v))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (* (floor h) maxAniso) (* (floor h) maxAniso)))))) (* (floor h) maxAniso)))
(if (>= (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* maxAniso (* (floor h) maxAniso))))) (/ (* (floor h) dX.v) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* maxAniso (* (floor h) maxAniso))))))) (/ (* (floor h) maxAniso) (sqrt (fmax (+ (* (* (floor w) dX.u) (* (floor w) dX.u)) (* (floor h) (* (floor h) (* dX.v dX.v)))) (+ (* (* (floor w) dY.u) (* (floor w) dY.u)) (* (floor h) (* maxAniso (* (floor h) maxAniso))))))))
Symmetry

(abs dX.u)

(abs dY.u)

(abs maxAniso)

explain73.0ms (1.2%)

Memory
-16.3MiB live, 109.7MiB allocated
Samples
8.0ms49×0valid
Compiler

Compiled 491 to 29 computations (94.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 2.0ms (35.7% of total)
ival-floor: 1.0ms (17.9% of total)
ival-sqrt: 1.0ms (17.9% of total)
ival-fmax: 0.0ms (0% of total)
ival-div: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-if: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
ival->=: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...