A single moderately complex shader. Compiled to multiple targets by the harness (same source, varying -target) to isolate generateOutput cost. ``n`` scales the amount of straight-line math the backend must emit. Scaling null: n scales op count and the emitted output is O(n); ideal codegen cost is O(n).
bucket: codegen_source · compile mode: target · flags: -target hlsl -entry computeMain · default N: 400
Full sub-counter decomposition of compileInner — named leaf timers plus (self) residuals (a parent's time not covered by a named child, e.g. the autodiff transform in linkAndOptimizeIR (self)). Topmost band traces compileInner; hover a band for its phase.
Overall compileInner: 287.2 → 98.0 ms -65.9% (2026-07-30 7c58a326b → 2026-08-29 28c755b09)
Contributors — the mutually-exclusive phase buckets (named leaves + (self) residuals) that tile compileInner; the pp column sums to the overall %. Buckets moving the total by ≥0.2% are listed, the rest fold into the remainder row. Below them, every other reported counter (nested/overlapping, e.g. serialized-module reads — own change only):
| counter | Δ | own % | of total |
|---|---|---|---|
| emitEntryPointsSourceFromIR | -93.6 ms | -72.7% | -32.6pp |
| legalizeExistentialTypeLayout | -48.2 ms | -98.5% | -16.8pp |
| legalizeResourceTypes | -47.9 ms | -98.5% | -16.7pp |
| (remaining 11 buckets) | +0.5 ms | – | +0.2pp |
| readSerializedModuleIR | -2.2 ms | -4.2% | – |
| loadBuiltinModule | -1.2 ms | -1.1% | – |
Largest day steps (≥5% of the previous day, both directions; bisect with git log <c0>..<c1> -- source/):
| boundary | % vs prev day | commits | top buckets (own %) |
|---|---|---|---|
| 2026-08-04 → 2026-08-05 | -66.5% | 0864e60e6..ff45b15ed | emitEntryPointsSourceFromIR -73%, legalizeResourceTypes -99%, legalizeExistentialTypeLayout -99% |
| 2026-08-20 → 2026-08-21 | +5.5% | 8dcc35a46..de679fdc3 | SemanticChecking +5%, compileInner (self) +419%, generateIR +13% |
| 2026-08-21 → 2026-08-22 | -5.1% | de679fdc3..bec577b36 | compileInner (self) -97%, SemanticChecking -5%, generateIR -13% |
Run from the slang repo root. This regenerates the sources below and re-runs this workload's measurement; --gen-dir keeps the generated files (they go to a tempdir and are deleted otherwise).
python3 tools/compile-perf/bench.py --slangc /path/to/slangc --only emit_hlsl --label repro --gen-dir repro-emit_hlsl
the complete compiled source (N = 400), shown in full
// AUTO-GENERATED by perf-suite/workloads.py - do not edit by hand.
RWStructuredBuffer<float> outBuf;
[shader("compute")]
[numthreads(64,1,1)]
void computeMain(uint3 tid : SV_DispatchThreadID)
{
float x = outBuf[tid.x];
float acc = x;
acc = acc * 1.0009 + sin(acc + 0.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 1.0);
acc = acc * 1.0009 + sin(acc + 1.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 2.0);
acc = acc * 1.0009 + sin(acc + 2.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 3.0);
acc = acc * 1.0009 + sin(acc + 3.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 4.0);
acc = acc * 1.0009 + sin(acc + 4.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 5.0);
acc = acc * 1.0009 + sin(acc + 5.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 6.0);
acc = acc * 1.0009 + sin(acc + 6.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 7.0);
acc = acc * 1.0009 + sin(acc + 7.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 8.0);
acc = acc * 1.0009 + sin(acc + 8.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 9.0);
acc = acc * 1.0009 + sin(acc + 9.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 10.0);
acc = acc * 1.0009 + sin(acc + 10.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 11.0);
acc = acc * 1.0009 + sin(acc + 11.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 12.0);
acc = acc * 1.0009 + sin(acc + 12.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 13.0);
acc = acc * 1.0009 + sin(acc + 13.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 14.0);
acc = acc * 1.0009 + sin(acc + 14.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 15.0);
acc = acc * 1.0009 + sin(acc + 15.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 16.0);
acc = acc * 1.0009 + sin(acc + 16.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 17.0);
acc = acc * 1.0009 + sin(acc + 17.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 18.0);
acc = acc * 1.0009 + sin(acc + 18.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 19.0);
acc = acc * 1.0009 + sin(acc + 19.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 20.0);
acc = acc * 1.0009 + sin(acc + 20.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 21.0);
acc = acc * 1.0009 + sin(acc + 21.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 22.0);
acc = acc * 1.0009 + sin(acc + 22.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 23.0);
acc = acc * 1.0009 + sin(acc + 23.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 24.0);
acc = acc * 1.0009 + sin(acc + 24.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 25.0);
acc = acc * 1.0009 + sin(acc + 25.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 26.0);
acc = acc * 1.0009 + sin(acc + 26.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 27.0);
acc = acc * 1.0009 + sin(acc + 27.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 28.0);
acc = acc * 1.0009 + sin(acc + 28.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 29.0);
acc = acc * 1.0009 + sin(acc + 29.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 30.0);
acc = acc * 1.0009 + sin(acc + 30.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 31.0);
acc = acc * 1.0009 + sin(acc + 31.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 32.0);
acc = acc * 1.0009 + sin(acc + 32.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 33.0);
acc = acc * 1.0009 + sin(acc + 33.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 34.0);
acc = acc * 1.0009 + sin(acc + 34.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 35.0);
acc = acc * 1.0009 + sin(acc + 35.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 36.0);
acc = acc * 1.0009 + sin(acc + 36.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 37.0);
acc = acc * 1.0009 + sin(acc + 37.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 38.0);
acc = acc * 1.0009 + sin(acc + 38.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 39.0);
acc = acc * 1.0009 + sin(acc + 39.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 40.0);
acc = acc * 1.0009 + sin(acc + 40.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 41.0);
acc = acc * 1.0009 + sin(acc + 41.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 42.0);
acc = acc * 1.0009 + sin(acc + 42.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 43.0);
acc = acc * 1.0009 + sin(acc + 43.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 44.0);
acc = acc * 1.0009 + sin(acc + 44.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 45.0);
acc = acc * 1.0009 + sin(acc + 45.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 46.0);
acc = acc * 1.0009 + sin(acc + 46.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 47.0);
acc = acc * 1.0009 + sin(acc + 47.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 48.0);
acc = acc * 1.0009 + sin(acc + 48.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 49.0);
acc = acc * 1.0009 + sin(acc + 49.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 50.0);
acc = acc * 1.0009 + sin(acc + 50.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 51.0);
acc = acc * 1.0009 + sin(acc + 51.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 52.0);
acc = acc * 1.0009 + sin(acc + 52.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 53.0);
acc = acc * 1.0009 + sin(acc + 53.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 54.0);
acc = acc * 1.0009 + sin(acc + 54.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 55.0);
acc = acc * 1.0009 + sin(acc + 55.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 56.0);
acc = acc * 1.0009 + sin(acc + 56.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 57.0);
acc = acc * 1.0009 + sin(acc + 57.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 58.0);
acc = acc * 1.0009 + sin(acc + 58.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 59.0);
acc = acc * 1.0009 + sin(acc + 59.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 60.0);
acc = acc * 1.0009 + sin(acc + 60.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 61.0);
acc = acc * 1.0009 + sin(acc + 61.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 62.0);
acc = acc * 1.0009 + sin(acc + 62.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 63.0);
acc = acc * 1.0009 + sin(acc + 63.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 64.0);
acc = acc * 1.0009 + sin(acc + 64.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 65.0);
acc = acc * 1.0009 + sin(acc + 65.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 66.0);
acc = acc * 1.0009 + sin(acc + 66.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 67.0);
acc = acc * 1.0009 + sin(acc + 67.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 68.0);
acc = acc * 1.0009 + sin(acc + 68.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 69.0);
acc = acc * 1.0009 + sin(acc + 69.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 70.0);
acc = acc * 1.0009 + sin(acc + 70.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 71.0);
acc = acc * 1.0009 + sin(acc + 71.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 72.0);
acc = acc * 1.0009 + sin(acc + 72.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 73.0);
acc = acc * 1.0009 + sin(acc + 73.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 74.0);
acc = acc * 1.0009 + sin(acc + 74.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 75.0);
acc = acc * 1.0009 + sin(acc + 75.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 76.0);
acc = acc * 1.0009 + sin(acc + 76.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 77.0);
acc = acc * 1.0009 + sin(acc + 77.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 78.0);
acc = acc * 1.0009 + sin(acc + 78.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 79.0);
acc = acc * 1.0009 + sin(acc + 79.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 80.0);
acc = acc * 1.0009 + sin(acc + 80.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 81.0);
acc = acc * 1.0009 + sin(acc + 81.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 82.0);
acc = acc * 1.0009 + sin(acc + 82.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 83.0);
acc = acc * 1.0009 + sin(acc + 83.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 84.0);
acc = acc * 1.0009 + sin(acc + 84.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 85.0);
acc = acc * 1.0009 + sin(acc + 85.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 86.0);
acc = acc * 1.0009 + sin(acc + 86.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 87.0);
acc = acc * 1.0009 + sin(acc + 87.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 88.0);
acc = acc * 1.0009 + sin(acc + 88.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 89.0);
acc = acc * 1.0009 + sin(acc + 89.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 90.0);
acc = acc * 1.0009 + sin(acc + 90.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 91.0);
acc = acc * 1.0009 + sin(acc + 91.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 92.0);
acc = acc * 1.0009 + sin(acc + 92.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 93.0);
acc = acc * 1.0009 + sin(acc + 93.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 94.0);
acc = acc * 1.0009 + sin(acc + 94.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 95.0);
acc = acc * 1.0009 + sin(acc + 95.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 96.0);
acc = acc * 1.0009 + sin(acc + 96.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 97.0);
acc = acc * 1.0009 + sin(acc + 97.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 98.0);
acc = acc * 1.0009 + sin(acc + 98.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 99.0);
acc = acc * 1.0009 + sin(acc + 99.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 100.0);
acc = acc * 1.0009 + sin(acc + 100.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 101.0);
acc = acc * 1.0009 + sin(acc + 101.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 102.0);
acc = acc * 1.0009 + sin(acc + 102.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 103.0);
acc = acc * 1.0009 + sin(acc + 103.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 104.0);
acc = acc * 1.0009 + sin(acc + 104.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 105.0);
acc = acc * 1.0009 + sin(acc + 105.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 106.0);
acc = acc * 1.0009 + sin(acc + 106.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 107.0);
acc = acc * 1.0009 + sin(acc + 107.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 108.0);
acc = acc * 1.0009 + sin(acc + 108.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 109.0);
acc = acc * 1.0009 + sin(acc + 109.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 110.0);
acc = acc * 1.0009 + sin(acc + 110.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 111.0);
acc = acc * 1.0009 + sin(acc + 111.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 112.0);
acc = acc * 1.0009 + sin(acc + 112.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 113.0);
acc = acc * 1.0009 + sin(acc + 113.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 114.0);
acc = acc * 1.0009 + sin(acc + 114.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 115.0);
acc = acc * 1.0009 + sin(acc + 115.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 116.0);
acc = acc * 1.0009 + sin(acc + 116.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 117.0);
acc = acc * 1.0009 + sin(acc + 117.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 118.0);
acc = acc * 1.0009 + sin(acc + 118.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 119.0);
acc = acc * 1.0009 + sin(acc + 119.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 120.0);
acc = acc * 1.0009 + sin(acc + 120.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 121.0);
acc = acc * 1.0009 + sin(acc + 121.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 122.0);
acc = acc * 1.0009 + sin(acc + 122.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 123.0);
acc = acc * 1.0009 + sin(acc + 123.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 124.0);
acc = acc * 1.0009 + sin(acc + 124.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 125.0);
acc = acc * 1.0009 + sin(acc + 125.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 126.0);
acc = acc * 1.0009 + sin(acc + 126.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 127.0);
acc = acc * 1.0009 + sin(acc + 127.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 128.0);
acc = acc * 1.0009 + sin(acc + 128.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 129.0);
acc = acc * 1.0009 + sin(acc + 129.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 130.0);
acc = acc * 1.0009 + sin(acc + 130.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 131.0);
acc = acc * 1.0009 + sin(acc + 131.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 132.0);
acc = acc * 1.0009 + sin(acc + 132.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 133.0);
acc = acc * 1.0009 + sin(acc + 133.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 134.0);
acc = acc * 1.0009 + sin(acc + 134.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 135.0);
acc = acc * 1.0009 + sin(acc + 135.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 136.0);
acc = acc * 1.0009 + sin(acc + 136.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 137.0);
acc = acc * 1.0009 + sin(acc + 137.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 138.0);
acc = acc * 1.0009 + sin(acc + 138.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 139.0);
acc = acc * 1.0009 + sin(acc + 139.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 140.0);
acc = acc * 1.0009 + sin(acc + 140.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 141.0);
acc = acc * 1.0009 + sin(acc + 141.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 142.0);
acc = acc * 1.0009 + sin(acc + 142.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 143.0);
acc = acc * 1.0009 + sin(acc + 143.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 144.0);
acc = acc * 1.0009 + sin(acc + 144.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 145.0);
acc = acc * 1.0009 + sin(acc + 145.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 146.0);
acc = acc * 1.0009 + sin(acc + 146.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 147.0);
acc = acc * 1.0009 + sin(acc + 147.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 148.0);
acc = acc * 1.0009 + sin(acc + 148.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 149.0);
acc = acc * 1.0009 + sin(acc + 149.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 150.0);
acc = acc * 1.0009 + sin(acc + 150.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 151.0);
acc = acc * 1.0009 + sin(acc + 151.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 152.0);
acc = acc * 1.0009 + sin(acc + 152.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 153.0);
acc = acc * 1.0009 + sin(acc + 153.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 154.0);
acc = acc * 1.0009 + sin(acc + 154.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 155.0);
acc = acc * 1.0009 + sin(acc + 155.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 156.0);
acc = acc * 1.0009 + sin(acc + 156.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 157.0);
acc = acc * 1.0009 + sin(acc + 157.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 158.0);
acc = acc * 1.0009 + sin(acc + 158.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 159.0);
acc = acc * 1.0009 + sin(acc + 159.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 160.0);
acc = acc * 1.0009 + sin(acc + 160.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 161.0);
acc = acc * 1.0009 + sin(acc + 161.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 162.0);
acc = acc * 1.0009 + sin(acc + 162.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 163.0);
acc = acc * 1.0009 + sin(acc + 163.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 164.0);
acc = acc * 1.0009 + sin(acc + 164.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 165.0);
acc = acc * 1.0009 + sin(acc + 165.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 166.0);
acc = acc * 1.0009 + sin(acc + 166.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 167.0);
acc = acc * 1.0009 + sin(acc + 167.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 168.0);
acc = acc * 1.0009 + sin(acc + 168.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 169.0);
acc = acc * 1.0009 + sin(acc + 169.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 170.0);
acc = acc * 1.0009 + sin(acc + 170.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 171.0);
acc = acc * 1.0009 + sin(acc + 171.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 172.0);
acc = acc * 1.0009 + sin(acc + 172.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 173.0);
acc = acc * 1.0009 + sin(acc + 173.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 174.0);
acc = acc * 1.0009 + sin(acc + 174.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 175.0);
acc = acc * 1.0009 + sin(acc + 175.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 176.0);
acc = acc * 1.0009 + sin(acc + 176.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 177.0);
acc = acc * 1.0009 + sin(acc + 177.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 178.0);
acc = acc * 1.0009 + sin(acc + 178.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 179.0);
acc = acc * 1.0009 + sin(acc + 179.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 180.0);
acc = acc * 1.0009 + sin(acc + 180.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 181.0);
acc = acc * 1.0009 + sin(acc + 181.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 182.0);
acc = acc * 1.0009 + sin(acc + 182.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 183.0);
acc = acc * 1.0009 + sin(acc + 183.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 184.0);
acc = acc * 1.0009 + sin(acc + 184.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 185.0);
acc = acc * 1.0009 + sin(acc + 185.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 186.0);
acc = acc * 1.0009 + sin(acc + 186.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 187.0);
acc = acc * 1.0009 + sin(acc + 187.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 188.0);
acc = acc * 1.0009 + sin(acc + 188.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 189.0);
acc = acc * 1.0009 + sin(acc + 189.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 190.0);
acc = acc * 1.0009 + sin(acc + 190.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 191.0);
acc = acc * 1.0009 + sin(acc + 191.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 192.0);
acc = acc * 1.0009 + sin(acc + 192.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 193.0);
acc = acc * 1.0009 + sin(acc + 193.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 194.0);
acc = acc * 1.0009 + sin(acc + 194.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 195.0);
acc = acc * 1.0009 + sin(acc + 195.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 196.0);
acc = acc * 1.0009 + sin(acc + 196.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 197.0);
acc = acc * 1.0009 + sin(acc + 197.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 198.0);
acc = acc * 1.0009 + sin(acc + 198.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 199.0);
acc = acc * 1.0009 + sin(acc + 199.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 200.0);
acc = acc * 1.0009 + sin(acc + 200.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 201.0);
acc = acc * 1.0009 + sin(acc + 201.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 202.0);
acc = acc * 1.0009 + sin(acc + 202.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 203.0);
acc = acc * 1.0009 + sin(acc + 203.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 204.0);
acc = acc * 1.0009 + sin(acc + 204.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 205.0);
acc = acc * 1.0009 + sin(acc + 205.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 206.0);
acc = acc * 1.0009 + sin(acc + 206.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 207.0);
acc = acc * 1.0009 + sin(acc + 207.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 208.0);
acc = acc * 1.0009 + sin(acc + 208.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 209.0);
acc = acc * 1.0009 + sin(acc + 209.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 210.0);
acc = acc * 1.0009 + sin(acc + 210.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 211.0);
acc = acc * 1.0009 + sin(acc + 211.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 212.0);
acc = acc * 1.0009 + sin(acc + 212.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 213.0);
acc = acc * 1.0009 + sin(acc + 213.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 214.0);
acc = acc * 1.0009 + sin(acc + 214.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 215.0);
acc = acc * 1.0009 + sin(acc + 215.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 216.0);
acc = acc * 1.0009 + sin(acc + 216.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 217.0);
acc = acc * 1.0009 + sin(acc + 217.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 218.0);
acc = acc * 1.0009 + sin(acc + 218.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 219.0);
acc = acc * 1.0009 + sin(acc + 219.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 220.0);
acc = acc * 1.0009 + sin(acc + 220.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 221.0);
acc = acc * 1.0009 + sin(acc + 221.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 222.0);
acc = acc * 1.0009 + sin(acc + 222.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 223.0);
acc = acc * 1.0009 + sin(acc + 223.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 224.0);
acc = acc * 1.0009 + sin(acc + 224.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 225.0);
acc = acc * 1.0009 + sin(acc + 225.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 226.0);
acc = acc * 1.0009 + sin(acc + 226.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 227.0);
acc = acc * 1.0009 + sin(acc + 227.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 228.0);
acc = acc * 1.0009 + sin(acc + 228.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 229.0);
acc = acc * 1.0009 + sin(acc + 229.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 230.0);
acc = acc * 1.0009 + sin(acc + 230.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 231.0);
acc = acc * 1.0009 + sin(acc + 231.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 232.0);
acc = acc * 1.0009 + sin(acc + 232.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 233.0);
acc = acc * 1.0009 + sin(acc + 233.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 234.0);
acc = acc * 1.0009 + sin(acc + 234.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 235.0);
acc = acc * 1.0009 + sin(acc + 235.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 236.0);
acc = acc * 1.0009 + sin(acc + 236.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 237.0);
acc = acc * 1.0009 + sin(acc + 237.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 238.0);
acc = acc * 1.0009 + sin(acc + 238.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 239.0);
acc = acc * 1.0009 + sin(acc + 239.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 240.0);
acc = acc * 1.0009 + sin(acc + 240.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 241.0);
acc = acc * 1.0009 + sin(acc + 241.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 242.0);
acc = acc * 1.0009 + sin(acc + 242.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 243.0);
acc = acc * 1.0009 + sin(acc + 243.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 244.0);
acc = acc * 1.0009 + sin(acc + 244.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 245.0);
acc = acc * 1.0009 + sin(acc + 245.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 246.0);
acc = acc * 1.0009 + sin(acc + 246.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 247.0);
acc = acc * 1.0009 + sin(acc + 247.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 248.0);
acc = acc * 1.0009 + sin(acc + 248.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 249.0);
acc = acc * 1.0009 + sin(acc + 249.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 250.0);
acc = acc * 1.0009 + sin(acc + 250.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 251.0);
acc = acc * 1.0009 + sin(acc + 251.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 252.0);
acc = acc * 1.0009 + sin(acc + 252.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 253.0);
acc = acc * 1.0009 + sin(acc + 253.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 254.0);
acc = acc * 1.0009 + sin(acc + 254.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 255.0);
acc = acc * 1.0009 + sin(acc + 255.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 256.0);
acc = acc * 1.0009 + sin(acc + 256.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 257.0);
acc = acc * 1.0009 + sin(acc + 257.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 258.0);
acc = acc * 1.0009 + sin(acc + 258.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 259.0);
acc = acc * 1.0009 + sin(acc + 259.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 260.0);
acc = acc * 1.0009 + sin(acc + 260.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 261.0);
acc = acc * 1.0009 + sin(acc + 261.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 262.0);
acc = acc * 1.0009 + sin(acc + 262.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 263.0);
acc = acc * 1.0009 + sin(acc + 263.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 264.0);
acc = acc * 1.0009 + sin(acc + 264.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 265.0);
acc = acc * 1.0009 + sin(acc + 265.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 266.0);
acc = acc * 1.0009 + sin(acc + 266.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 267.0);
acc = acc * 1.0009 + sin(acc + 267.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 268.0);
acc = acc * 1.0009 + sin(acc + 268.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 269.0);
acc = acc * 1.0009 + sin(acc + 269.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 270.0);
acc = acc * 1.0009 + sin(acc + 270.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 271.0);
acc = acc * 1.0009 + sin(acc + 271.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 272.0);
acc = acc * 1.0009 + sin(acc + 272.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 273.0);
acc = acc * 1.0009 + sin(acc + 273.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 274.0);
acc = acc * 1.0009 + sin(acc + 274.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 275.0);
acc = acc * 1.0009 + sin(acc + 275.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 276.0);
acc = acc * 1.0009 + sin(acc + 276.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 277.0);
acc = acc * 1.0009 + sin(acc + 277.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 278.0);
acc = acc * 1.0009 + sin(acc + 278.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 279.0);
acc = acc * 1.0009 + sin(acc + 279.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 280.0);
acc = acc * 1.0009 + sin(acc + 280.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 281.0);
acc = acc * 1.0009 + sin(acc + 281.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 282.0);
acc = acc * 1.0009 + sin(acc + 282.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 283.0);
acc = acc * 1.0009 + sin(acc + 283.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 284.0);
acc = acc * 1.0009 + sin(acc + 284.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 285.0);
acc = acc * 1.0009 + sin(acc + 285.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 286.0);
acc = acc * 1.0009 + sin(acc + 286.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 287.0);
acc = acc * 1.0009 + sin(acc + 287.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 288.0);
acc = acc * 1.0009 + sin(acc + 288.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 289.0);
acc = acc * 1.0009 + sin(acc + 289.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 290.0);
acc = acc * 1.0009 + sin(acc + 290.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 291.0);
acc = acc * 1.0009 + sin(acc + 291.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 292.0);
acc = acc * 1.0009 + sin(acc + 292.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 293.0);
acc = acc * 1.0009 + sin(acc + 293.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 294.0);
acc = acc * 1.0009 + sin(acc + 294.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 295.0);
acc = acc * 1.0009 + sin(acc + 295.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 296.0);
acc = acc * 1.0009 + sin(acc + 296.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 297.0);
acc = acc * 1.0009 + sin(acc + 297.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 298.0);
acc = acc * 1.0009 + sin(acc + 298.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 299.0);
acc = acc * 1.0009 + sin(acc + 299.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 300.0);
acc = acc * 1.0009 + sin(acc + 300.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 301.0);
acc = acc * 1.0009 + sin(acc + 301.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 302.0);
acc = acc * 1.0009 + sin(acc + 302.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 303.0);
acc = acc * 1.0009 + sin(acc + 303.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 304.0);
acc = acc * 1.0009 + sin(acc + 304.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 305.0);
acc = acc * 1.0009 + sin(acc + 305.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 306.0);
acc = acc * 1.0009 + sin(acc + 306.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 307.0);
acc = acc * 1.0009 + sin(acc + 307.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 308.0);
acc = acc * 1.0009 + sin(acc + 308.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 309.0);
acc = acc * 1.0009 + sin(acc + 309.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 310.0);
acc = acc * 1.0009 + sin(acc + 310.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 311.0);
acc = acc * 1.0009 + sin(acc + 311.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 312.0);
acc = acc * 1.0009 + sin(acc + 312.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 313.0);
acc = acc * 1.0009 + sin(acc + 313.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 314.0);
acc = acc * 1.0009 + sin(acc + 314.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 315.0);
acc = acc * 1.0009 + sin(acc + 315.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 316.0);
acc = acc * 1.0009 + sin(acc + 316.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 317.0);
acc = acc * 1.0009 + sin(acc + 317.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 318.0);
acc = acc * 1.0009 + sin(acc + 318.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 319.0);
acc = acc * 1.0009 + sin(acc + 319.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 320.0);
acc = acc * 1.0009 + sin(acc + 320.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 321.0);
acc = acc * 1.0009 + sin(acc + 321.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 322.0);
acc = acc * 1.0009 + sin(acc + 322.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 323.0);
acc = acc * 1.0009 + sin(acc + 323.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 324.0);
acc = acc * 1.0009 + sin(acc + 324.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 325.0);
acc = acc * 1.0009 + sin(acc + 325.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 326.0);
acc = acc * 1.0009 + sin(acc + 326.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 327.0);
acc = acc * 1.0009 + sin(acc + 327.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 328.0);
acc = acc * 1.0009 + sin(acc + 328.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 329.0);
acc = acc * 1.0009 + sin(acc + 329.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 330.0);
acc = acc * 1.0009 + sin(acc + 330.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 331.0);
acc = acc * 1.0009 + sin(acc + 331.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 332.0);
acc = acc * 1.0009 + sin(acc + 332.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 333.0);
acc = acc * 1.0009 + sin(acc + 333.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 334.0);
acc = acc * 1.0009 + sin(acc + 334.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 335.0);
acc = acc * 1.0009 + sin(acc + 335.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 336.0);
acc = acc * 1.0009 + sin(acc + 336.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 337.0);
acc = acc * 1.0009 + sin(acc + 337.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 338.0);
acc = acc * 1.0009 + sin(acc + 338.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 339.0);
acc = acc * 1.0009 + sin(acc + 339.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 340.0);
acc = acc * 1.0009 + sin(acc + 340.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 341.0);
acc = acc * 1.0009 + sin(acc + 341.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 342.0);
acc = acc * 1.0009 + sin(acc + 342.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 343.0);
acc = acc * 1.0009 + sin(acc + 343.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 344.0);
acc = acc * 1.0009 + sin(acc + 344.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 345.0);
acc = acc * 1.0009 + sin(acc + 345.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 346.0);
acc = acc * 1.0009 + sin(acc + 346.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 347.0);
acc = acc * 1.0009 + sin(acc + 347.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 348.0);
acc = acc * 1.0009 + sin(acc + 348.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 349.0);
acc = acc * 1.0009 + sin(acc + 349.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 350.0);
acc = acc * 1.0009 + sin(acc + 350.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 351.0);
acc = acc * 1.0009 + sin(acc + 351.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 352.0);
acc = acc * 1.0009 + sin(acc + 352.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 353.0);
acc = acc * 1.0009 + sin(acc + 353.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 354.0);
acc = acc * 1.0009 + sin(acc + 354.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 355.0);
acc = acc * 1.0009 + sin(acc + 355.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 356.0);
acc = acc * 1.0009 + sin(acc + 356.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 357.0);
acc = acc * 1.0009 + sin(acc + 357.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 358.0);
acc = acc * 1.0009 + sin(acc + 358.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 359.0);
acc = acc * 1.0009 + sin(acc + 359.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 360.0);
acc = acc * 1.0009 + sin(acc + 360.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 361.0);
acc = acc * 1.0009 + sin(acc + 361.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 362.0);
acc = acc * 1.0009 + sin(acc + 362.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 363.0);
acc = acc * 1.0009 + sin(acc + 363.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 364.0);
acc = acc * 1.0009 + sin(acc + 364.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 365.0);
acc = acc * 1.0009 + sin(acc + 365.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 366.0);
acc = acc * 1.0009 + sin(acc + 366.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 367.0);
acc = acc * 1.0009 + sin(acc + 367.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 368.0);
acc = acc * 1.0009 + sin(acc + 368.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 369.0);
acc = acc * 1.0009 + sin(acc + 369.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 370.0);
acc = acc * 1.0009 + sin(acc + 370.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 371.0);
acc = acc * 1.0009 + sin(acc + 371.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 372.0);
acc = acc * 1.0009 + sin(acc + 372.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 373.0);
acc = acc * 1.0009 + sin(acc + 373.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 374.0);
acc = acc * 1.0009 + sin(acc + 374.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 375.0);
acc = acc * 1.0009 + sin(acc + 375.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 376.0);
acc = acc * 1.0009 + sin(acc + 376.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 377.0);
acc = acc * 1.0009 + sin(acc + 377.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 378.0);
acc = acc * 1.0009 + sin(acc + 378.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 379.0);
acc = acc * 1.0009 + sin(acc + 379.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 380.0);
acc = acc * 1.0009 + sin(acc + 380.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 381.0);
acc = acc * 1.0009 + sin(acc + 381.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 382.0);
acc = acc * 1.0009 + sin(acc + 382.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 383.0);
acc = acc * 1.0009 + sin(acc + 383.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 384.0);
acc = acc * 1.0009 + sin(acc + 384.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 385.0);
acc = acc * 1.0009 + sin(acc + 385.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 386.0);
acc = acc * 1.0009 + sin(acc + 386.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 387.0);
acc = acc * 1.0009 + sin(acc + 387.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 388.0);
acc = acc * 1.0009 + sin(acc + 388.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 389.0);
acc = acc * 1.0009 + sin(acc + 389.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 390.0);
acc = acc * 1.0009 + sin(acc + 390.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 391.0);
acc = acc * 1.0009 + sin(acc + 391.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 392.0);
acc = acc * 1.0009 + sin(acc + 392.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 393.0);
acc = acc * 1.0009 + sin(acc + 393.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 394.0);
acc = acc * 1.0009 + sin(acc + 394.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 395.0);
acc = acc * 1.0009 + sin(acc + 395.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 396.0);
acc = acc * 1.0009 + sin(acc + 396.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 397.0);
acc = acc * 1.0009 + sin(acc + 397.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 398.0);
acc = acc * 1.0009 + sin(acc + 398.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 399.0);
acc = acc * 1.0009 + sin(acc + 399.0) * 0.5 - cos(acc * 0.5) * 0.25 + sqrt(abs(acc) + 400.0);
outBuf[tid.x] = acc;
}