onejs-sl 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/README.md +50 -6
- package/goldens/goldens.json +69 -2
- package/package.json +2 -2
- package/src/body.ts +38 -5
- package/src/compile.ts +11 -1
- package/src/core.ts +4 -4
- package/src/hlsl.ts +21 -3
- package/src/ir.ts +98 -11
- package/src/lang/README.md +4 -3
- package/src/lang/check.ts +39 -7
- package/src/lang/classify.ts +2 -2
- package/src/lang/glsl.ts +2 -2
- package/src/lang/lower.ts +108 -41
- package/src/lang/parser.ts +1 -1
- package/src/ops.ts +7 -3
- package/src/params.ts +5 -2
- package/src/serial.ts +14 -4
- package/src/sl.ts +46 -3
- package/src/structure.ts +2 -2
- package/src/tables.ts +2 -2
- package/src/web.ts +31 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.7.0
|
|
4
|
+
|
|
5
|
+
A program can read what it drew the frame before, and count frames (`Specs/SL_NEXT.md` 4). Every existing program keeps its hash and its shader; one that reads the new names is IR 5. A host has to forward the new `reads` to draw such a program, which makes this a minor.
|
|
6
|
+
|
|
7
|
+
- `previous`, the frame this program drew last, read as `tex2D(previous, uv)`; `previous.sample(uv)` in `sl.program`
|
|
8
|
+
- `frame`, an int counting frames since `previous` was last cleared, and `deltaTime`, the seconds since the frame before
|
|
9
|
+
- A file that already used one of the three names keeps its own
|
|
10
|
+
- `readsOf(program)` and `compile(p).reads` say which of the three a host has to keep between frames
|
|
11
|
+
- `BodyTarget` takes `inputs.frame`, `inputs.deltaTime` and `previous(uv)`, all optional; `emitBody` names the one a program needs and a target lacks
|
|
12
|
+
- The Unity shader reads the step from `_Res.zw` and the previous frame from `_Prev`; the web frame from `sl_Res.w`, `sl_Opt.z` and its own binding
|
|
13
|
+
- IR 5: `SAMPLE_PREVIOUS` and the two inputs
|
|
14
|
+
- `fromGLSL` turns `iFrame` and `iTimeDelta` into `frame` and `deltaTime`
|
|
15
|
+
- The goldens step the programs that read the three, and hold the history to the bit
|
|
16
|
+
- The web emitters refuse an input they have no mapping for
|
|
17
|
+
- The shipped source is typechecked against ES2020 with no Node types, which found the parser's `Array.prototype.at`
|
|
18
|
+
|
|
19
|
+
## 0.6.0
|
|
20
|
+
|
|
21
|
+
An int uniform says it is one, and uint constants fold as int ones do. A `.sl` program whose uint constants now fold gets a new hash and shader, which a build regenerates; every other program keeps its hash and its shader, and a program built in code keeps both, since the fold is the `.sl` file's. That hash change and `sl.uniform.int` make this a minor.
|
|
22
|
+
|
|
23
|
+
- An int uniform's declaration says so: `kind: "int"` on the `UniformDecl`, which `toJSON` and `fromJSON` keep, so a host can show a whole number field. A float uniform has no `kind`, and the hash does not read it; an older `fromJSON` ignores it
|
|
24
|
+
- An int uniform's default is refused when its float slot cannot hold it exactly (16777217, or anything past 2147483520), since the program would read another number
|
|
25
|
+
- `sl.uniform.int(name, value, control)`, which `uniform int` in a `.sl` file lowers to
|
|
26
|
+
- A uint constant folds as an int one does: `float(5u)` is 5 and `float(3u + 4u)` is 7, with no node. Arithmetic, bit operators, comparisons and conversions between constant uints, ints and floats come out as the value, on 32 bits and wrapping; a zero divisor gives 0, as a computed one does
|
|
27
|
+
- `uint(k)` of a negative constant int keeps its bits (`uint(-1)` through an int is 4294967295), as the GPU does, instead of 0
|
|
28
|
+
- A `for` counting a uint between constant bounds unrolls, as one counting an int does
|
|
29
|
+
|
|
3
30
|
## 0.5.0
|
|
4
31
|
|
|
5
32
|
Real control flow: an `if` runs only the side it picks, a loop that cannot unroll runs as a loop, and `int`, `uint` and `bool` are types. A program with an `if` statement gets a new hash, which a build regenerates; every other program keeps its hash and its shader.
|
package/README.md
CHANGED
|
@@ -54,7 +54,11 @@ intrinsic at its exact type, since Metal overloads where HLSL converts). The `Bo
|
|
|
54
54
|
for each input, the float4 holding a uniform slot, a texture sample and a
|
|
55
55
|
sample at a mip level (`sampleLevel`, for `tex2Dlod`), whether
|
|
56
56
|
`toLinear` is real (`colour: "linear"`) or the identity (`"gamma"`), and
|
|
57
|
-
optionally a local to assign the result to.
|
|
57
|
+
optionally a local to assign the result to. A host that steps a program frame
|
|
58
|
+
by frame adds `frame` and `deltaTime` to its inputs and a `previous` read (below,
|
|
59
|
+
"What a program is given"); a target without one cannot draw a program that
|
|
60
|
+
reads it, and `emitBody` says which is missing rather than print a shader that
|
|
61
|
+
stands still. It returns the uniform and texture
|
|
58
62
|
slots the body uses and the library functions it calls. The sample's contract
|
|
59
63
|
is on `BodyTarget.sample`: straight alpha in and out, rgb in the space `colour`
|
|
60
64
|
names (an sRGB texture decoded before filtering when it is `linear`), and
|
|
@@ -76,9 +80,15 @@ supplies (`frac`, `lerp`).
|
|
|
76
80
|
|
|
77
81
|
A uniform declared with a hex default (`uniform float4 tint = #ff8040;`), or
|
|
78
82
|
with `sl.uniform.colour`, is marked `colour: true`: its value is sRGB as
|
|
79
|
-
written, which is what a colour picker shows, and its reads convert.
|
|
83
|
+
written, which is what a colour picker shows, and its reads convert. A
|
|
84
|
+
`uniform int`, or `sl.uniform.int`, is marked `kind: "int"`: its slot is a float
|
|
85
|
+
like any other, its default is a whole number that slot holds exactly, and the
|
|
86
|
+
program reads it as one, so a host shows a whole number field; a float uniform
|
|
87
|
+
has no `kind`. Neither mark is in the hash, since the reads' conversion already
|
|
88
|
+
is. `inputsUsed`
|
|
80
89
|
says which inputs the result depends on, dead nodes aside, so a host knows
|
|
81
|
-
whether a program animates.
|
|
90
|
+
whether a program animates, and `readsOf` (also `compile(p).reads`) says which
|
|
91
|
+
of the previous frame, `frame` and `deltaTime` it needs kept between frames.
|
|
82
92
|
|
|
83
93
|
## The helper library: one source
|
|
84
94
|
|
|
@@ -139,6 +149,15 @@ stores as written), `texture.sl` (a texture's orientation and sRGB decode) and
|
|
|
139
149
|
solid colours). `sdf-values.sl`, `fbm-values.sl` and `ramp-values.sl` are black unless a
|
|
140
150
|
shape, a noise or a ramp draws differently with its parameters as values than
|
|
141
151
|
as constants.
|
|
152
|
+
A fixture that reads the previous frame, `frame` or `deltaTime` is stepped
|
|
153
|
+
instead of drawn at times: eight frames at 1/30 of a second, into an
|
|
154
|
+
`rgba16float` history pair that starts clear, each frame then copied into the
|
|
155
|
+
target as an element shows it. goldens.json holds its samples at frames 0, 1
|
|
156
|
+
and 7, as shown and as the raw history. Three are anchors on the history, to
|
|
157
|
+
the bit: `counter.sl` (a step taken twice, a missed swap or 8 bit history),
|
|
158
|
+
`drift.sl` (the previous frame read upside down) and `frame-delta.sl` (`frame`
|
|
159
|
+
and `deltaTime` as a host hands them over); `trail.sl` is the fading trail the
|
|
160
|
+
docs show.
|
|
142
161
|
The whole translated library must also compile on both backends, including
|
|
143
162
|
the functions no fixture reaches. The file describes the sampling grid, the
|
|
144
163
|
times and the texture every sampled slot gets. A host imports it as
|
|
@@ -151,7 +170,8 @@ bits per pixel, and `corpus/probe-hash.sl` does the same through a program;
|
|
|
151
170
|
every pixel must match `goldens/reference.mjs`, which computes the hashes in
|
|
152
171
|
JavaScript. goldens.json ships each probe under its name, as HLSL, WGSL and
|
|
153
172
|
GLSL ES and with the bits it must draw, for a host to run on its own compiler,
|
|
154
|
-
and marks the fixtures compared at 0/255 `exact
|
|
173
|
+
and marks the fixtures compared at 0/255 `exact`, and the stepped fixtures
|
|
174
|
+
whose history is compared to the bit `historyExact`.
|
|
155
175
|
|
|
156
176
|
`npm run goldens -- --check` draws everything again and compares it with
|
|
157
177
|
goldens.json instead of writing it: within 1/255, and exact fixtures and probes
|
|
@@ -165,9 +185,12 @@ hash fails there until the goldens are drawn again.
|
|
|
165
185
|
The source reaches for no host API: no `fs`, `process`, `Buffer`,
|
|
166
186
|
`TextEncoder`, `performance`, `structuredClone` or `Intl`. It runs in a
|
|
167
187
|
browser (the Play editor's diagnostics), a Cloudflare worker (the Play build)
|
|
168
|
-
and QuickJS (Magerie).
|
|
188
|
+
and QuickJS (Magerie). Three checks hold it to that:
|
|
169
189
|
|
|
170
190
|
- lint refuses those globals and any Node module in `src/`;
|
|
191
|
+
- `npm run typecheck` also checks the shipped source alone against ES2020 with
|
|
192
|
+
no Node types (`tsconfig.lib.json`), since `@types/node` adds later methods
|
|
193
|
+
such as `Array.prototype.at`, which 0.5.0 used by mistake;
|
|
171
194
|
- `npm run test:quickjs` bundles `quickjs/corpus.ts` as one ES2020 IIFE, the
|
|
172
195
|
way Magerie bundles a script, runs it in QuickJS-ng and in a bare Node
|
|
173
196
|
context, and fails unless the two results agree byte for byte. The corpus
|
|
@@ -345,7 +368,9 @@ number. `fromJSON` moves an older file's immediates to operands. IR 4 added
|
|
|
345
368
|
control flow (the `if` and `loop` nodes, a loop's `param`s and each result's
|
|
346
369
|
`proj`) and int, uint and bool values (a node's `kind`). A program that uses
|
|
347
370
|
none of them is still IR 3 and keeps its hash; one with an `if` statement is
|
|
348
|
-
IR 4, since the statement is now a real branch rather than a select.
|
|
371
|
+
IR 4, since the statement is now a real branch rather than a select. IR 5 added
|
|
372
|
+
the previous frame (`SAMPLE_PREVIOUS`) and the `frame` and `deltaTime` inputs;
|
|
373
|
+
a program that reads none of them keeps the version and the hash it had.
|
|
349
374
|
|
|
350
375
|
## Control flow
|
|
351
376
|
|
|
@@ -400,6 +425,25 @@ program that does not compiles to the bytes it always did, and a program with a
|
|
|
400
425
|
`texel` of its own keeps it: a local, a parameter or a uniform of that name
|
|
401
426
|
shadows the input.
|
|
402
427
|
|
|
428
|
+
Three are for a program drawn frame after frame, and a host hands them over
|
|
429
|
+
only to a program that reads them (`readsOf`):
|
|
430
|
+
|
|
431
|
+
- `previous`, a texture: what this program drew the frame before, read as
|
|
432
|
+
`tex2D(previous, uv)`. It is the program's result exactly, linear and
|
|
433
|
+
straight alpha, kept at 16 bits a channel, filtered bilinear and clamped at
|
|
434
|
+
the edges, with one level (so `tex2Dlod` refuses it). A read at a pixel's own
|
|
435
|
+
`uv` is that pixel.
|
|
436
|
+
- `frame`, an int: frames drawn since `previous` was last cleared, from 0.
|
|
437
|
+
- `deltaTime`: seconds since the frame before, 0 on the first.
|
|
438
|
+
|
|
439
|
+
A host advances a frame when it draws with `time` moved forward: the last
|
|
440
|
+
result becomes `previous`, `frame` goes up by one and `deltaTime` is the step.
|
|
441
|
+
A draw at the same time draws the same frame again. It clears (`previous`
|
|
442
|
+
transparent black, `frame` and `deltaTime` 0) on the first draw, a new size, a
|
|
443
|
+
new program, a seek and time going back, so `frame` is 0 exactly when
|
|
444
|
+
`previous` is clear. A file that already used one of the three names for its
|
|
445
|
+
own value, texture or function keeps it.
|
|
446
|
+
|
|
403
447
|
Why `resolution` and `aspect` are the target's: a program is drawn with
|
|
404
448
|
`Graphics.Blit` into the element's own render texture, and Unity sets `_ScreenParams` per camera and
|
|
405
449
|
leaves it alone for a blit: reading it from a 64x256 target answers with the
|
package/goldens/goldens.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"generatedBy": "onejs-sl goldens/run.mjs",
|
|
3
|
-
"package": "0.
|
|
4
|
-
"ir":
|
|
3
|
+
"package": "0.7.0",
|
|
4
|
+
"ir": 5,
|
|
5
5
|
"target": "rgba8unorm-srgb: straight alpha, 8 bit, sRGB encoded, the stored bytes of a Linear OneJS game's element",
|
|
6
6
|
"size": [
|
|
7
7
|
64,
|
|
@@ -11,6 +11,13 @@
|
|
|
11
11
|
0,
|
|
12
12
|
1.25
|
|
13
13
|
],
|
|
14
|
+
"steps": "a fixture that reads previous, frame or deltaTime is stepped rather than drawn at times: 8 frames, frame k at time k / 30 with frame k and deltaTime 1 / 30 (0 on frame 0), each drawn raw into one half of an rgba16float history pair that starts clear, the other half its previous frame (bilinear, clamp to edge), then copied texel for texel into the target. frames holds the target's samples at frames 0, 1, 7, and history the same samples of the raw history, as floats",
|
|
15
|
+
"stepFrames": [
|
|
16
|
+
0,
|
|
17
|
+
1,
|
|
18
|
+
7
|
|
19
|
+
],
|
|
20
|
+
"historyExact": "a stepped fixture marked historyExact has to hold its history samples to the bit",
|
|
14
21
|
"samples": "a 16 x 16 grid at x = 2 + 4i, y = 2 + 4j, rows from the top, i fastest, RGBA each",
|
|
15
22
|
"texture": "every sampled slot: 8 x 8, rgba8 sRGB, linear filter, clamp to edge; texel (x, y) with y from the top = (32x + 16, 32y + 16, (x + y) even ? 200 : 40, 255); uv (0, 0) is the image's bottom left. Mip levels 1 to 3 (4 x 4, 2 x 2, 1 x 1) are each one colour, (224, 64, 32, 255), (32, 224, 64, 255), (64, 32, 224, 255), sampled nearest between levels",
|
|
16
23
|
"uniforms": "each program's declared defaults; a colour uniform's default is sRGB as written",
|
|
@@ -19,6 +26,7 @@
|
|
|
19
26
|
"webgl2": "ANGLE (Apple, ANGLE Metal Renderer: Apple M4 Pro, Unspecified Version)"
|
|
20
27
|
},
|
|
21
28
|
"backendsAgreeWithin": 1,
|
|
29
|
+
"historiesAgreeWithin": 0,
|
|
22
30
|
"exact": "a fixture marked exact has to draw its samples to the byte, not within 1/255",
|
|
23
31
|
"fixtures": {
|
|
24
32
|
"branch.sl": {
|
|
@@ -29,6 +37,21 @@
|
|
|
29
37
|
"1.25": [189,94,45,255,200,99,48,255,205,102,49,255,217,108,53,255,206,102,49,255,203,101,49,255,214,107,52,255,217,108,53,255,206,102,49,255,208,103,50,255,213,106,52,255,207,103,50,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,200,99,48,255,196,97,47,255,206,103,50,255,213,106,52,255,208,103,50,255,209,104,50,255,216,108,52,255,210,105,51,255,195,96,46,255,191,94,45,255,204,101,49,255,201,100,48,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,200,99,48,255,208,104,50,255,214,106,52,255,218,108,53,255,215,107,52,255,212,106,51,255,220,110,54,255,210,104,51,255,184,91,43,255,173,85,40,255,186,92,44,255,185,91,44,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,213,106,51,255,213,106,52,255,218,109,53,255,224,112,55,255,225,113,55,255,216,108,52,255,213,106,52,255,206,102,50,255,187,92,44,255,187,92,44,255,183,90,43,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,228,114,56,255,222,111,54,255,220,110,54,255,230,115,57,255,222,111,54,255,215,107,52,255,205,102,49,255,200,99,48,255,192,95,46,255,199,99,48,255,196,97,47,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,224,112,55,255,232,116,57,255,224,112,55,255,225,112,55,255,222,111,54,255,210,104,51,255,195,96,46,255,192,95,46,255,186,92,44,255,189,93,45,255,197,98,47,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,210,104,51,255,213,106,52,255,222,111,54,255,218,109,53,255,211,105,51,255,200,99,48,255,185,91,43,255,171,84,40,255,163,80,37,255,181,89,42,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,184,91,43,255,197,98,47,255,211,105,51,255,202,100,48,255,203,101,49,255,188,93,44,255,174,85,40,255,150,73,34,255,147,71,33,255,163,80,37,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,169,83,39,255,186,92,44,255,195,96,46,255,199,99,48,255,199,99,48,255,180,89,42,255,164,80,37,255,145,70,32,255,145,70,32,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,151,73,34,255,166,81,38,255,181,89,43,255,196,97,47,255,200,99,48,255,189,93,45,255,158,77,36,255,150,73,33,255,148,72,33,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,128,61,27,255,133,64,29,255,161,78,37,255,178,87,41,255,185,91,43,255,185,91,44,255,170,83,39,255,153,74,34,255,146,71,32,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,137,66,30,255,138,66,30,255,146,70,32,255,156,76,35,255,172,84,40,255,181,89,42,255,176,86,41,255,173,85,40,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,181,89,43,255,168,82,39,255,164,80,37,255,159,78,36,255,172,85,40,255,176,87,41,255,185,91,44,255,191,94,45,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,207,103,50,255,189,93,45,255,185,91,43,255,179,88,42,255,173,85,40,255,186,92,44,255,192,95,46,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,199,99,48,255,194,96,46,255,191,94,45,255,188,93,45,255,180,89,42,255,171,84,40,255,167,82,38,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,194,96,46,255,189,93,45,255,188,93,44,255,182,90,43,255,165,81,38,255,157,77,36,255,158,77,36,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255,225,112,55,255]
|
|
30
38
|
}
|
|
31
39
|
},
|
|
40
|
+
"counter.sl": {
|
|
41
|
+
"hash": "dae26c70",
|
|
42
|
+
"historyExact": true,
|
|
43
|
+
"source": "// The previous frame plus 1/256 each frame (Specs/SL_NEXT.md 4). The history\n// starts clear, so frame N holds (N + 1) / 256 in red, green and blue exactly:\n// a missed swap, a step taken twice, or history kept at 8 bits all show.\nfloat4 main() {\n float4 last = tex2D(previous, uv);\n return float4(last.rgb + 1.0 / 256.0, 1);\n}\n",
|
|
44
|
+
"frames": {
|
|
45
|
+
"0": [13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255,13,13,13,255],
|
|
46
|
+
"1": [22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255,22,22,22,255],
|
|
47
|
+
"7": [49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255,49,49,49,255]
|
|
48
|
+
},
|
|
49
|
+
"history": {
|
|
50
|
+
"0": [0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1,0.00390625,0.00390625,0.00390625,1],
|
|
51
|
+
"1": [0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1,0.0078125,0.0078125,0.0078125,1],
|
|
52
|
+
"7": [0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1,0.03125,0.03125,0.03125,1]
|
|
53
|
+
}
|
|
54
|
+
},
|
|
32
55
|
"cov-arith.sl": {
|
|
33
56
|
"hash": "6af8b494",
|
|
34
57
|
"source": "// + - * / pow, unary -, rcp, min, max and clamp over continuous inputs. The\n// stepwise ops are in step.sl: together they need more than the VM's eight\n// registers.\nfloat4 main() {\n float2 q = (uv - 0.5) * 6.0;\n float a = pow(abs(q.x) * 0.3, 1.7) + rcp(abs(q.y) + 1.0) - (-q.x) * 0.1;\n float c = q.y / (abs(q.x) + 2.0) + abs(q.y) * 0.1;\n return float4(saturate(a * 0.3), clamp(c * 0.5 + 0.5, 0.0, 1.0), min(max(a * 0.2, 0.1), 0.9), 1);\n}\n",
|
|
@@ -93,6 +116,21 @@
|
|
|
93
116
|
"1.25": [98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255,98,74,46,255,108,81,51,255,121,92,58,255,138,105,67,255,161,123,80,255,187,143,93,255,214,165,108,255,223,171,113,255,230,177,117,255,237,182,120,255,242,187,123,255,246,190,125,255,248,191,126,255,248,191,126,255,248,191,126,255,248,191,126,255]
|
|
94
117
|
}
|
|
95
118
|
},
|
|
119
|
+
"drift.sl": {
|
|
120
|
+
"hash": "5eea1728",
|
|
121
|
+
"historyExact": true,
|
|
122
|
+
"source": "// What was drawn moves up a pixel each frame: frame 0 draws blocks, and every\n// frame after reads the previous one a pixel lower. The bottom row reads\n// itself, as the edge clamps. A previous frame read upside down moves it down.\nfloat4 main() {\n if (frame == 0) return float4(floor(fragCoord / 8) / 8, 0.5, 1);\n return tex2D(previous, uv - float2(0, texel.y));\n}\n",
|
|
123
|
+
"frames": {
|
|
124
|
+
"0": [0,240,188,255,0,240,188,255,99,240,188,255,99,240,188,255,137,240,188,255,137,240,188,255,165,240,188,255,165,240,188,255,188,240,188,255,188,240,188,255,207,240,188,255,207,240,188,255,225,240,188,255,225,240,188,255,240,240,188,255,240,240,188,255,0,240,188,255,0,240,188,255,99,240,188,255,99,240,188,255,137,240,188,255,137,240,188,255,165,240,188,255,165,240,188,255,188,240,188,255,188,240,188,255,207,240,188,255,207,240,188,255,225,240,188,255,225,240,188,255,240,240,188,255,240,240,188,255,0,225,188,255,0,225,188,255,99,225,188,255,99,225,188,255,137,225,188,255,137,225,188,255,165,225,188,255,165,225,188,255,188,225,188,255,188,225,188,255,207,225,188,255,207,225,188,255,225,225,188,255,225,225,188,255,240,225,188,255,240,225,188,255,0,225,188,255,0,225,188,255,99,225,188,255,99,225,188,255,137,225,188,255,137,225,188,255,165,225,188,255,165,225,188,255,188,225,188,255,188,225,188,255,207,225,188,255,207,225,188,255,225,225,188,255,225,225,188,255,240,225,188,255,240,225,188,255,0,207,188,255,0,207,188,255,99,207,188,255,99,207,188,255,137,207,188,255,137,207,188,255,165,207,188,255,165,207,188,255,188,207,188,255,188,207,188,255,207,207,188,255,207,207,188,255,225,207,188,255,225,207,188,255,240,207,188,255,240,207,188,255,0,207,188,255,0,207,188,255,99,207,188,255,99,207,188,255,137,207,188,255,137,207,188,255,165,207,188,255,165,207,188,255,188,207,188,255,188,207,188,255,207,207,188,255,207,207,188,255,225,207,188,255,225,207,188,255,240,207,188,255,240,207,188,255,0,188,188,255,0,188,188,255,99,188,188,255,99,188,188,255,137,188,188,255,137,188,188,255,165,188,188,255,165,188,188,255,188,188,188,255,188,188,188,255,207,188,188,255,207,188,188,255,225,188,188,255,225,188,188,255,240,188,188,255,240,188,188,255,0,188,188,255,0,188,188,255,99,188,188,255,99,188,188,255,137,188,188,255,137,188,188,255,165,188,188,255,165,188,188,255,188,188,188,255,188,188,188,255,207,188,188,255,207,188,188,255,225,188,188,255,225,188,188,255,240,188,188,255,240,188,188,255,0,165,188,255,0,165,188,255,99,165,188,255,99,165,188,255,137,165,188,255,137,165,188,255,165,165,188,255,165,165,188,255,188,165,188,255,188,165,188,255,207,165,188,255,207,165,188,255,225,165,188,255,225,165,188,255,240,165,188,255,240,165,188,255,0,165,188,255,0,165,188,255,99,165,188,255,99,165,188,255,137,165,188,255,137,165,188,255,165,165,188,255,165,165,188,255,188,165,188,255,188,165,188,255,207,165,188,255,207,165,188,255,225,165,188,255,225,165,188,255,240,165,188,255,240,165,188,255,0,137,188,255,0,137,188,255,99,137,188,255,99,137,188,255,137,137,188,255,137,137,188,255,165,137,188,255,165,137,188,255,188,137,188,255,188,137,188,255,207,137,188,255,207,137,188,255,225,137,188,255,225,137,188,255,240,137,188,255,240,137,188,255,0,137,188,255,0,137,188,255,99,137,188,255,99,137,188,255,137,137,188,255,137,137,188,255,165,137,188,255,165,137,188,255,188,137,188,255,188,137,188,255,207,137,188,255,207,137,188,255,225,137,188,255,225,137,188,255,240,137,188,255,240,137,188,255,0,99,188,255,0,99,188,255,99,99,188,255,99,99,188,255,137,99,188,255,137,99,188,255,165,99,188,255,165,99,188,255,188,99,188,255,188,99,188,255,207,99,188,255,207,99,188,255,225,99,188,255,225,99,188,255,240,99,188,255,240,99,188,255,0,99,188,255,0,99,188,255,99,99,188,255,99,99,188,255,137,99,188,255,137,99,188,255,165,99,188,255,165,99,188,255,188,99,188,255,188,99,188,255,207,99,188,255,207,99,188,255,225,99,188,255,225,99,188,255,240,99,188,255,240,99,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255],
|
|
125
|
+
"1": [0,240,188,255,0,240,188,255,99,240,188,255,99,240,188,255,137,240,188,255,137,240,188,255,165,240,188,255,165,240,188,255,188,240,188,255,188,240,188,255,207,240,188,255,207,240,188,255,225,240,188,255,225,240,188,255,240,240,188,255,240,240,188,255,0,240,188,255,0,240,188,255,99,240,188,255,99,240,188,255,137,240,188,255,137,240,188,255,165,240,188,255,165,240,188,255,188,240,188,255,188,240,188,255,207,240,188,255,207,240,188,255,225,240,188,255,225,240,188,255,240,240,188,255,240,240,188,255,0,225,188,255,0,225,188,255,99,225,188,255,99,225,188,255,137,225,188,255,137,225,188,255,165,225,188,255,165,225,188,255,188,225,188,255,188,225,188,255,207,225,188,255,207,225,188,255,225,225,188,255,225,225,188,255,240,225,188,255,240,225,188,255,0,225,188,255,0,225,188,255,99,225,188,255,99,225,188,255,137,225,188,255,137,225,188,255,165,225,188,255,165,225,188,255,188,225,188,255,188,225,188,255,207,225,188,255,207,225,188,255,225,225,188,255,225,225,188,255,240,225,188,255,240,225,188,255,0,207,188,255,0,207,188,255,99,207,188,255,99,207,188,255,137,207,188,255,137,207,188,255,165,207,188,255,165,207,188,255,188,207,188,255,188,207,188,255,207,207,188,255,207,207,188,255,225,207,188,255,225,207,188,255,240,207,188,255,240,207,188,255,0,207,188,255,0,207,188,255,99,207,188,255,99,207,188,255,137,207,188,255,137,207,188,255,165,207,188,255,165,207,188,255,188,207,188,255,188,207,188,255,207,207,188,255,207,207,188,255,225,207,188,255,225,207,188,255,240,207,188,255,240,207,188,255,0,188,188,255,0,188,188,255,99,188,188,255,99,188,188,255,137,188,188,255,137,188,188,255,165,188,188,255,165,188,188,255,188,188,188,255,188,188,188,255,207,188,188,255,207,188,188,255,225,188,188,255,225,188,188,255,240,188,188,255,240,188,188,255,0,188,188,255,0,188,188,255,99,188,188,255,99,188,188,255,137,188,188,255,137,188,188,255,165,188,188,255,165,188,188,255,188,188,188,255,188,188,188,255,207,188,188,255,207,188,188,255,225,188,188,255,225,188,188,255,240,188,188,255,240,188,188,255,0,165,188,255,0,165,188,255,99,165,188,255,99,165,188,255,137,165,188,255,137,165,188,255,165,165,188,255,165,165,188,255,188,165,188,255,188,165,188,255,207,165,188,255,207,165,188,255,225,165,188,255,225,165,188,255,240,165,188,255,240,165,188,255,0,165,188,255,0,165,188,255,99,165,188,255,99,165,188,255,137,165,188,255,137,165,188,255,165,165,188,255,165,165,188,255,188,165,188,255,188,165,188,255,207,165,188,255,207,165,188,255,225,165,188,255,225,165,188,255,240,165,188,255,240,165,188,255,0,137,188,255,0,137,188,255,99,137,188,255,99,137,188,255,137,137,188,255,137,137,188,255,165,137,188,255,165,137,188,255,188,137,188,255,188,137,188,255,207,137,188,255,207,137,188,255,225,137,188,255,225,137,188,255,240,137,188,255,240,137,188,255,0,137,188,255,0,137,188,255,99,137,188,255,99,137,188,255,137,137,188,255,137,137,188,255,165,137,188,255,165,137,188,255,188,137,188,255,188,137,188,255,207,137,188,255,207,137,188,255,225,137,188,255,225,137,188,255,240,137,188,255,240,137,188,255,0,99,188,255,0,99,188,255,99,99,188,255,99,99,188,255,137,99,188,255,137,99,188,255,165,99,188,255,165,99,188,255,188,99,188,255,188,99,188,255,207,99,188,255,207,99,188,255,225,99,188,255,225,99,188,255,240,99,188,255,240,99,188,255,0,99,188,255,0,99,188,255,99,99,188,255,99,99,188,255,137,99,188,255,137,99,188,255,165,99,188,255,165,99,188,255,188,99,188,255,188,99,188,255,207,99,188,255,207,99,188,255,225,99,188,255,225,99,188,255,240,99,188,255,240,99,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255],
|
|
126
|
+
"7": [0,225,188,255,0,225,188,255,99,225,188,255,99,225,188,255,137,225,188,255,137,225,188,255,165,225,188,255,165,225,188,255,188,225,188,255,188,225,188,255,207,225,188,255,207,225,188,255,225,225,188,255,225,225,188,255,240,225,188,255,240,225,188,255,0,225,188,255,0,225,188,255,99,225,188,255,99,225,188,255,137,225,188,255,137,225,188,255,165,225,188,255,165,225,188,255,188,225,188,255,188,225,188,255,207,225,188,255,207,225,188,255,225,225,188,255,225,225,188,255,240,225,188,255,240,225,188,255,0,207,188,255,0,207,188,255,99,207,188,255,99,207,188,255,137,207,188,255,137,207,188,255,165,207,188,255,165,207,188,255,188,207,188,255,188,207,188,255,207,207,188,255,207,207,188,255,225,207,188,255,225,207,188,255,240,207,188,255,240,207,188,255,0,207,188,255,0,207,188,255,99,207,188,255,99,207,188,255,137,207,188,255,137,207,188,255,165,207,188,255,165,207,188,255,188,207,188,255,188,207,188,255,207,207,188,255,207,207,188,255,225,207,188,255,225,207,188,255,240,207,188,255,240,207,188,255,0,188,188,255,0,188,188,255,99,188,188,255,99,188,188,255,137,188,188,255,137,188,188,255,165,188,188,255,165,188,188,255,188,188,188,255,188,188,188,255,207,188,188,255,207,188,188,255,225,188,188,255,225,188,188,255,240,188,188,255,240,188,188,255,0,188,188,255,0,188,188,255,99,188,188,255,99,188,188,255,137,188,188,255,137,188,188,255,165,188,188,255,165,188,188,255,188,188,188,255,188,188,188,255,207,188,188,255,207,188,188,255,225,188,188,255,225,188,188,255,240,188,188,255,240,188,188,255,0,165,188,255,0,165,188,255,99,165,188,255,99,165,188,255,137,165,188,255,137,165,188,255,165,165,188,255,165,165,188,255,188,165,188,255,188,165,188,255,207,165,188,255,207,165,188,255,225,165,188,255,225,165,188,255,240,165,188,255,240,165,188,255,0,165,188,255,0,165,188,255,99,165,188,255,99,165,188,255,137,165,188,255,137,165,188,255,165,165,188,255,165,165,188,255,188,165,188,255,188,165,188,255,207,165,188,255,207,165,188,255,225,165,188,255,225,165,188,255,240,165,188,255,240,165,188,255,0,137,188,255,0,137,188,255,99,137,188,255,99,137,188,255,137,137,188,255,137,137,188,255,165,137,188,255,165,137,188,255,188,137,188,255,188,137,188,255,207,137,188,255,207,137,188,255,225,137,188,255,225,137,188,255,240,137,188,255,240,137,188,255,0,137,188,255,0,137,188,255,99,137,188,255,99,137,188,255,137,137,188,255,137,137,188,255,165,137,188,255,165,137,188,255,188,137,188,255,188,137,188,255,207,137,188,255,207,137,188,255,225,137,188,255,225,137,188,255,240,137,188,255,240,137,188,255,0,99,188,255,0,99,188,255,99,99,188,255,99,99,188,255,137,99,188,255,137,99,188,255,165,99,188,255,165,99,188,255,188,99,188,255,188,99,188,255,207,99,188,255,207,99,188,255,225,99,188,255,225,99,188,255,240,99,188,255,240,99,188,255,0,99,188,255,0,99,188,255,99,99,188,255,99,99,188,255,137,99,188,255,137,99,188,255,165,99,188,255,165,99,188,255,188,99,188,255,188,99,188,255,207,99,188,255,207,99,188,255,225,99,188,255,225,99,188,255,240,99,188,255,240,99,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255,0,0,188,255,0,0,188,255,99,0,188,255,99,0,188,255,137,0,188,255,137,0,188,255,165,0,188,255,165,0,188,255,188,0,188,255,188,0,188,255,207,0,188,255,207,0,188,255,225,0,188,255,225,0,188,255,240,0,188,255,240,0,188,255]
|
|
127
|
+
},
|
|
128
|
+
"history": {
|
|
129
|
+
"0": [0,0.875,0.5,1,0,0.875,0.5,1,0.125,0.875,0.5,1,0.125,0.875,0.5,1,0.25,0.875,0.5,1,0.25,0.875,0.5,1,0.375,0.875,0.5,1,0.375,0.875,0.5,1,0.5,0.875,0.5,1,0.5,0.875,0.5,1,0.625,0.875,0.5,1,0.625,0.875,0.5,1,0.75,0.875,0.5,1,0.75,0.875,0.5,1,0.875,0.875,0.5,1,0.875,0.875,0.5,1,0,0.875,0.5,1,0,0.875,0.5,1,0.125,0.875,0.5,1,0.125,0.875,0.5,1,0.25,0.875,0.5,1,0.25,0.875,0.5,1,0.375,0.875,0.5,1,0.375,0.875,0.5,1,0.5,0.875,0.5,1,0.5,0.875,0.5,1,0.625,0.875,0.5,1,0.625,0.875,0.5,1,0.75,0.875,0.5,1,0.75,0.875,0.5,1,0.875,0.875,0.5,1,0.875,0.875,0.5,1,0,0.75,0.5,1,0,0.75,0.5,1,0.125,0.75,0.5,1,0.125,0.75,0.5,1,0.25,0.75,0.5,1,0.25,0.75,0.5,1,0.375,0.75,0.5,1,0.375,0.75,0.5,1,0.5,0.75,0.5,1,0.5,0.75,0.5,1,0.625,0.75,0.5,1,0.625,0.75,0.5,1,0.75,0.75,0.5,1,0.75,0.75,0.5,1,0.875,0.75,0.5,1,0.875,0.75,0.5,1,0,0.75,0.5,1,0,0.75,0.5,1,0.125,0.75,0.5,1,0.125,0.75,0.5,1,0.25,0.75,0.5,1,0.25,0.75,0.5,1,0.375,0.75,0.5,1,0.375,0.75,0.5,1,0.5,0.75,0.5,1,0.5,0.75,0.5,1,0.625,0.75,0.5,1,0.625,0.75,0.5,1,0.75,0.75,0.5,1,0.75,0.75,0.5,1,0.875,0.75,0.5,1,0.875,0.75,0.5,1,0,0.625,0.5,1,0,0.625,0.5,1,0.125,0.625,0.5,1,0.125,0.625,0.5,1,0.25,0.625,0.5,1,0.25,0.625,0.5,1,0.375,0.625,0.5,1,0.375,0.625,0.5,1,0.5,0.625,0.5,1,0.5,0.625,0.5,1,0.625,0.625,0.5,1,0.625,0.625,0.5,1,0.75,0.625,0.5,1,0.75,0.625,0.5,1,0.875,0.625,0.5,1,0.875,0.625,0.5,1,0,0.625,0.5,1,0,0.625,0.5,1,0.125,0.625,0.5,1,0.125,0.625,0.5,1,0.25,0.625,0.5,1,0.25,0.625,0.5,1,0.375,0.625,0.5,1,0.375,0.625,0.5,1,0.5,0.625,0.5,1,0.5,0.625,0.5,1,0.625,0.625,0.5,1,0.625,0.625,0.5,1,0.75,0.625,0.5,1,0.75,0.625,0.5,1,0.875,0.625,0.5,1,0.875,0.625,0.5,1,0,0.5,0.5,1,0,0.5,0.5,1,0.125,0.5,0.5,1,0.125,0.5,0.5,1,0.25,0.5,0.5,1,0.25,0.5,0.5,1,0.375,0.5,0.5,1,0.375,0.5,0.5,1,0.5,0.5,0.5,1,0.5,0.5,0.5,1,0.625,0.5,0.5,1,0.625,0.5,0.5,1,0.75,0.5,0.5,1,0.75,0.5,0.5,1,0.875,0.5,0.5,1,0.875,0.5,0.5,1,0,0.5,0.5,1,0,0.5,0.5,1,0.125,0.5,0.5,1,0.125,0.5,0.5,1,0.25,0.5,0.5,1,0.25,0.5,0.5,1,0.375,0.5,0.5,1,0.375,0.5,0.5,1,0.5,0.5,0.5,1,0.5,0.5,0.5,1,0.625,0.5,0.5,1,0.625,0.5,0.5,1,0.75,0.5,0.5,1,0.75,0.5,0.5,1,0.875,0.5,0.5,1,0.875,0.5,0.5,1,0,0.375,0.5,1,0,0.375,0.5,1,0.125,0.375,0.5,1,0.125,0.375,0.5,1,0.25,0.375,0.5,1,0.25,0.375,0.5,1,0.375,0.375,0.5,1,0.375,0.375,0.5,1,0.5,0.375,0.5,1,0.5,0.375,0.5,1,0.625,0.375,0.5,1,0.625,0.375,0.5,1,0.75,0.375,0.5,1,0.75,0.375,0.5,1,0.875,0.375,0.5,1,0.875,0.375,0.5,1,0,0.375,0.5,1,0,0.375,0.5,1,0.125,0.375,0.5,1,0.125,0.375,0.5,1,0.25,0.375,0.5,1,0.25,0.375,0.5,1,0.375,0.375,0.5,1,0.375,0.375,0.5,1,0.5,0.375,0.5,1,0.5,0.375,0.5,1,0.625,0.375,0.5,1,0.625,0.375,0.5,1,0.75,0.375,0.5,1,0.75,0.375,0.5,1,0.875,0.375,0.5,1,0.875,0.375,0.5,1,0,0.25,0.5,1,0,0.25,0.5,1,0.125,0.25,0.5,1,0.125,0.25,0.5,1,0.25,0.25,0.5,1,0.25,0.25,0.5,1,0.375,0.25,0.5,1,0.375,0.25,0.5,1,0.5,0.25,0.5,1,0.5,0.25,0.5,1,0.625,0.25,0.5,1,0.625,0.25,0.5,1,0.75,0.25,0.5,1,0.75,0.25,0.5,1,0.875,0.25,0.5,1,0.875,0.25,0.5,1,0,0.25,0.5,1,0,0.25,0.5,1,0.125,0.25,0.5,1,0.125,0.25,0.5,1,0.25,0.25,0.5,1,0.25,0.25,0.5,1,0.375,0.25,0.5,1,0.375,0.25,0.5,1,0.5,0.25,0.5,1,0.5,0.25,0.5,1,0.625,0.25,0.5,1,0.625,0.25,0.5,1,0.75,0.25,0.5,1,0.75,0.25,0.5,1,0.875,0.25,0.5,1,0.875,0.25,0.5,1,0,0.125,0.5,1,0,0.125,0.5,1,0.125,0.125,0.5,1,0.125,0.125,0.5,1,0.25,0.125,0.5,1,0.25,0.125,0.5,1,0.375,0.125,0.5,1,0.375,0.125,0.5,1,0.5,0.125,0.5,1,0.5,0.125,0.5,1,0.625,0.125,0.5,1,0.625,0.125,0.5,1,0.75,0.125,0.5,1,0.75,0.125,0.5,1,0.875,0.125,0.5,1,0.875,0.125,0.5,1,0,0.125,0.5,1,0,0.125,0.5,1,0.125,0.125,0.5,1,0.125,0.125,0.5,1,0.25,0.125,0.5,1,0.25,0.125,0.5,1,0.375,0.125,0.5,1,0.375,0.125,0.5,1,0.5,0.125,0.5,1,0.5,0.125,0.5,1,0.625,0.125,0.5,1,0.625,0.125,0.5,1,0.75,0.125,0.5,1,0.75,0.125,0.5,1,0.875,0.125,0.5,1,0.875,0.125,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1],
|
|
130
|
+
"1": [0,0.875,0.5,1,0,0.875,0.5,1,0.125,0.875,0.5,1,0.125,0.875,0.5,1,0.25,0.875,0.5,1,0.25,0.875,0.5,1,0.375,0.875,0.5,1,0.375,0.875,0.5,1,0.5,0.875,0.5,1,0.5,0.875,0.5,1,0.625,0.875,0.5,1,0.625,0.875,0.5,1,0.75,0.875,0.5,1,0.75,0.875,0.5,1,0.875,0.875,0.5,1,0.875,0.875,0.5,1,0,0.875,0.5,1,0,0.875,0.5,1,0.125,0.875,0.5,1,0.125,0.875,0.5,1,0.25,0.875,0.5,1,0.25,0.875,0.5,1,0.375,0.875,0.5,1,0.375,0.875,0.5,1,0.5,0.875,0.5,1,0.5,0.875,0.5,1,0.625,0.875,0.5,1,0.625,0.875,0.5,1,0.75,0.875,0.5,1,0.75,0.875,0.5,1,0.875,0.875,0.5,1,0.875,0.875,0.5,1,0,0.75,0.5,1,0,0.75,0.5,1,0.125,0.75,0.5,1,0.125,0.75,0.5,1,0.25,0.75,0.5,1,0.25,0.75,0.5,1,0.375,0.75,0.5,1,0.375,0.75,0.5,1,0.5,0.75,0.5,1,0.5,0.75,0.5,1,0.625,0.75,0.5,1,0.625,0.75,0.5,1,0.75,0.75,0.5,1,0.75,0.75,0.5,1,0.875,0.75,0.5,1,0.875,0.75,0.5,1,0,0.75,0.5,1,0,0.75,0.5,1,0.125,0.75,0.5,1,0.125,0.75,0.5,1,0.25,0.75,0.5,1,0.25,0.75,0.5,1,0.375,0.75,0.5,1,0.375,0.75,0.5,1,0.5,0.75,0.5,1,0.5,0.75,0.5,1,0.625,0.75,0.5,1,0.625,0.75,0.5,1,0.75,0.75,0.5,1,0.75,0.75,0.5,1,0.875,0.75,0.5,1,0.875,0.75,0.5,1,0,0.625,0.5,1,0,0.625,0.5,1,0.125,0.625,0.5,1,0.125,0.625,0.5,1,0.25,0.625,0.5,1,0.25,0.625,0.5,1,0.375,0.625,0.5,1,0.375,0.625,0.5,1,0.5,0.625,0.5,1,0.5,0.625,0.5,1,0.625,0.625,0.5,1,0.625,0.625,0.5,1,0.75,0.625,0.5,1,0.75,0.625,0.5,1,0.875,0.625,0.5,1,0.875,0.625,0.5,1,0,0.625,0.5,1,0,0.625,0.5,1,0.125,0.625,0.5,1,0.125,0.625,0.5,1,0.25,0.625,0.5,1,0.25,0.625,0.5,1,0.375,0.625,0.5,1,0.375,0.625,0.5,1,0.5,0.625,0.5,1,0.5,0.625,0.5,1,0.625,0.625,0.5,1,0.625,0.625,0.5,1,0.75,0.625,0.5,1,0.75,0.625,0.5,1,0.875,0.625,0.5,1,0.875,0.625,0.5,1,0,0.5,0.5,1,0,0.5,0.5,1,0.125,0.5,0.5,1,0.125,0.5,0.5,1,0.25,0.5,0.5,1,0.25,0.5,0.5,1,0.375,0.5,0.5,1,0.375,0.5,0.5,1,0.5,0.5,0.5,1,0.5,0.5,0.5,1,0.625,0.5,0.5,1,0.625,0.5,0.5,1,0.75,0.5,0.5,1,0.75,0.5,0.5,1,0.875,0.5,0.5,1,0.875,0.5,0.5,1,0,0.5,0.5,1,0,0.5,0.5,1,0.125,0.5,0.5,1,0.125,0.5,0.5,1,0.25,0.5,0.5,1,0.25,0.5,0.5,1,0.375,0.5,0.5,1,0.375,0.5,0.5,1,0.5,0.5,0.5,1,0.5,0.5,0.5,1,0.625,0.5,0.5,1,0.625,0.5,0.5,1,0.75,0.5,0.5,1,0.75,0.5,0.5,1,0.875,0.5,0.5,1,0.875,0.5,0.5,1,0,0.375,0.5,1,0,0.375,0.5,1,0.125,0.375,0.5,1,0.125,0.375,0.5,1,0.25,0.375,0.5,1,0.25,0.375,0.5,1,0.375,0.375,0.5,1,0.375,0.375,0.5,1,0.5,0.375,0.5,1,0.5,0.375,0.5,1,0.625,0.375,0.5,1,0.625,0.375,0.5,1,0.75,0.375,0.5,1,0.75,0.375,0.5,1,0.875,0.375,0.5,1,0.875,0.375,0.5,1,0,0.375,0.5,1,0,0.375,0.5,1,0.125,0.375,0.5,1,0.125,0.375,0.5,1,0.25,0.375,0.5,1,0.25,0.375,0.5,1,0.375,0.375,0.5,1,0.375,0.375,0.5,1,0.5,0.375,0.5,1,0.5,0.375,0.5,1,0.625,0.375,0.5,1,0.625,0.375,0.5,1,0.75,0.375,0.5,1,0.75,0.375,0.5,1,0.875,0.375,0.5,1,0.875,0.375,0.5,1,0,0.25,0.5,1,0,0.25,0.5,1,0.125,0.25,0.5,1,0.125,0.25,0.5,1,0.25,0.25,0.5,1,0.25,0.25,0.5,1,0.375,0.25,0.5,1,0.375,0.25,0.5,1,0.5,0.25,0.5,1,0.5,0.25,0.5,1,0.625,0.25,0.5,1,0.625,0.25,0.5,1,0.75,0.25,0.5,1,0.75,0.25,0.5,1,0.875,0.25,0.5,1,0.875,0.25,0.5,1,0,0.25,0.5,1,0,0.25,0.5,1,0.125,0.25,0.5,1,0.125,0.25,0.5,1,0.25,0.25,0.5,1,0.25,0.25,0.5,1,0.375,0.25,0.5,1,0.375,0.25,0.5,1,0.5,0.25,0.5,1,0.5,0.25,0.5,1,0.625,0.25,0.5,1,0.625,0.25,0.5,1,0.75,0.25,0.5,1,0.75,0.25,0.5,1,0.875,0.25,0.5,1,0.875,0.25,0.5,1,0,0.125,0.5,1,0,0.125,0.5,1,0.125,0.125,0.5,1,0.125,0.125,0.5,1,0.25,0.125,0.5,1,0.25,0.125,0.5,1,0.375,0.125,0.5,1,0.375,0.125,0.5,1,0.5,0.125,0.5,1,0.5,0.125,0.5,1,0.625,0.125,0.5,1,0.625,0.125,0.5,1,0.75,0.125,0.5,1,0.75,0.125,0.5,1,0.875,0.125,0.5,1,0.875,0.125,0.5,1,0,0.125,0.5,1,0,0.125,0.5,1,0.125,0.125,0.5,1,0.125,0.125,0.5,1,0.25,0.125,0.5,1,0.25,0.125,0.5,1,0.375,0.125,0.5,1,0.375,0.125,0.5,1,0.5,0.125,0.5,1,0.5,0.125,0.5,1,0.625,0.125,0.5,1,0.625,0.125,0.5,1,0.75,0.125,0.5,1,0.75,0.125,0.5,1,0.875,0.125,0.5,1,0.875,0.125,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1],
|
|
131
|
+
"7": [0,0.75,0.5,1,0,0.75,0.5,1,0.125,0.75,0.5,1,0.125,0.75,0.5,1,0.25,0.75,0.5,1,0.25,0.75,0.5,1,0.375,0.75,0.5,1,0.375,0.75,0.5,1,0.5,0.75,0.5,1,0.5,0.75,0.5,1,0.625,0.75,0.5,1,0.625,0.75,0.5,1,0.75,0.75,0.5,1,0.75,0.75,0.5,1,0.875,0.75,0.5,1,0.875,0.75,0.5,1,0,0.75,0.5,1,0,0.75,0.5,1,0.125,0.75,0.5,1,0.125,0.75,0.5,1,0.25,0.75,0.5,1,0.25,0.75,0.5,1,0.375,0.75,0.5,1,0.375,0.75,0.5,1,0.5,0.75,0.5,1,0.5,0.75,0.5,1,0.625,0.75,0.5,1,0.625,0.75,0.5,1,0.75,0.75,0.5,1,0.75,0.75,0.5,1,0.875,0.75,0.5,1,0.875,0.75,0.5,1,0,0.625,0.5,1,0,0.625,0.5,1,0.125,0.625,0.5,1,0.125,0.625,0.5,1,0.25,0.625,0.5,1,0.25,0.625,0.5,1,0.375,0.625,0.5,1,0.375,0.625,0.5,1,0.5,0.625,0.5,1,0.5,0.625,0.5,1,0.625,0.625,0.5,1,0.625,0.625,0.5,1,0.75,0.625,0.5,1,0.75,0.625,0.5,1,0.875,0.625,0.5,1,0.875,0.625,0.5,1,0,0.625,0.5,1,0,0.625,0.5,1,0.125,0.625,0.5,1,0.125,0.625,0.5,1,0.25,0.625,0.5,1,0.25,0.625,0.5,1,0.375,0.625,0.5,1,0.375,0.625,0.5,1,0.5,0.625,0.5,1,0.5,0.625,0.5,1,0.625,0.625,0.5,1,0.625,0.625,0.5,1,0.75,0.625,0.5,1,0.75,0.625,0.5,1,0.875,0.625,0.5,1,0.875,0.625,0.5,1,0,0.5,0.5,1,0,0.5,0.5,1,0.125,0.5,0.5,1,0.125,0.5,0.5,1,0.25,0.5,0.5,1,0.25,0.5,0.5,1,0.375,0.5,0.5,1,0.375,0.5,0.5,1,0.5,0.5,0.5,1,0.5,0.5,0.5,1,0.625,0.5,0.5,1,0.625,0.5,0.5,1,0.75,0.5,0.5,1,0.75,0.5,0.5,1,0.875,0.5,0.5,1,0.875,0.5,0.5,1,0,0.5,0.5,1,0,0.5,0.5,1,0.125,0.5,0.5,1,0.125,0.5,0.5,1,0.25,0.5,0.5,1,0.25,0.5,0.5,1,0.375,0.5,0.5,1,0.375,0.5,0.5,1,0.5,0.5,0.5,1,0.5,0.5,0.5,1,0.625,0.5,0.5,1,0.625,0.5,0.5,1,0.75,0.5,0.5,1,0.75,0.5,0.5,1,0.875,0.5,0.5,1,0.875,0.5,0.5,1,0,0.375,0.5,1,0,0.375,0.5,1,0.125,0.375,0.5,1,0.125,0.375,0.5,1,0.25,0.375,0.5,1,0.25,0.375,0.5,1,0.375,0.375,0.5,1,0.375,0.375,0.5,1,0.5,0.375,0.5,1,0.5,0.375,0.5,1,0.625,0.375,0.5,1,0.625,0.375,0.5,1,0.75,0.375,0.5,1,0.75,0.375,0.5,1,0.875,0.375,0.5,1,0.875,0.375,0.5,1,0,0.375,0.5,1,0,0.375,0.5,1,0.125,0.375,0.5,1,0.125,0.375,0.5,1,0.25,0.375,0.5,1,0.25,0.375,0.5,1,0.375,0.375,0.5,1,0.375,0.375,0.5,1,0.5,0.375,0.5,1,0.5,0.375,0.5,1,0.625,0.375,0.5,1,0.625,0.375,0.5,1,0.75,0.375,0.5,1,0.75,0.375,0.5,1,0.875,0.375,0.5,1,0.875,0.375,0.5,1,0,0.25,0.5,1,0,0.25,0.5,1,0.125,0.25,0.5,1,0.125,0.25,0.5,1,0.25,0.25,0.5,1,0.25,0.25,0.5,1,0.375,0.25,0.5,1,0.375,0.25,0.5,1,0.5,0.25,0.5,1,0.5,0.25,0.5,1,0.625,0.25,0.5,1,0.625,0.25,0.5,1,0.75,0.25,0.5,1,0.75,0.25,0.5,1,0.875,0.25,0.5,1,0.875,0.25,0.5,1,0,0.25,0.5,1,0,0.25,0.5,1,0.125,0.25,0.5,1,0.125,0.25,0.5,1,0.25,0.25,0.5,1,0.25,0.25,0.5,1,0.375,0.25,0.5,1,0.375,0.25,0.5,1,0.5,0.25,0.5,1,0.5,0.25,0.5,1,0.625,0.25,0.5,1,0.625,0.25,0.5,1,0.75,0.25,0.5,1,0.75,0.25,0.5,1,0.875,0.25,0.5,1,0.875,0.25,0.5,1,0,0.125,0.5,1,0,0.125,0.5,1,0.125,0.125,0.5,1,0.125,0.125,0.5,1,0.25,0.125,0.5,1,0.25,0.125,0.5,1,0.375,0.125,0.5,1,0.375,0.125,0.5,1,0.5,0.125,0.5,1,0.5,0.125,0.5,1,0.625,0.125,0.5,1,0.625,0.125,0.5,1,0.75,0.125,0.5,1,0.75,0.125,0.5,1,0.875,0.125,0.5,1,0.875,0.125,0.5,1,0,0.125,0.5,1,0,0.125,0.5,1,0.125,0.125,0.5,1,0.125,0.125,0.5,1,0.25,0.125,0.5,1,0.25,0.125,0.5,1,0.375,0.125,0.5,1,0.375,0.125,0.5,1,0.5,0.125,0.5,1,0.5,0.125,0.5,1,0.625,0.125,0.5,1,0.625,0.125,0.5,1,0.75,0.125,0.5,1,0.75,0.125,0.5,1,0.875,0.125,0.5,1,0.875,0.125,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1,0,0,0.5,1,0,0,0.5,1,0.125,0,0.5,1,0.125,0,0.5,1,0.25,0,0.5,1,0.25,0,0.5,1,0.375,0,0.5,1,0.375,0,0.5,1,0.5,0,0.5,1,0.5,0,0.5,1,0.625,0,0.5,1,0.625,0,0.5,1,0.75,0,0.5,1,0.75,0,0.5,1,0.875,0,0.5,1,0.875,0,0.5,1]
|
|
132
|
+
}
|
|
133
|
+
},
|
|
96
134
|
"early-return.sl": {
|
|
97
135
|
"hash": "36371b89",
|
|
98
136
|
"source": "// A circular window that computes its plasma only inside (Specs/SL_NEXT.md 3a):\n// the early return puts the rest of main on the other side of one real branch,\n// and the texture read after it is in flow that differs per pixel, so every\n// backend samples it at level 0.\ntexture2D t;\nfloat4 main() {\n float2 p = uv - 0.5;\n if (length(p) > 0.45) return float4(0, 0, 0, 0);\n float v = fbm(p * 5 + time * 0.2, 4);\n float4 c = tex2D(t, uv);\n return float4(lerp(c.rgb, float3(v, v * 0.6, 1 - v), 0.5), 1);\n}\n",
|
|
@@ -118,6 +156,21 @@
|
|
|
118
156
|
"1.25": [0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255]
|
|
119
157
|
}
|
|
120
158
|
},
|
|
159
|
+
"frame-delta.sl": {
|
|
160
|
+
"hash": "12de4ff1",
|
|
161
|
+
"historyExact": true,
|
|
162
|
+
"source": "// frame and deltaTime as colours. Red counts frames in 256ths; green is\n// deltaTime in 30ths of a second, 0 on the first frame and 1 after; blue is 1\n// where time is the sum of the steps taken, which a host keeps by construction.\nfloat4 main() {\n float summed = abs(time - float(frame) * deltaTime) < 0.0001 ? 1 : 0;\n return float4(float(frame) / 256.0, deltaTime * 30.0, summed, 1);\n}\n",
|
|
163
|
+
"frames": {
|
|
164
|
+
"0": [0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255,0,0,255,255],
|
|
165
|
+
"1": [13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255,13,255,255,255],
|
|
166
|
+
"7": [46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255,46,255,255,255]
|
|
167
|
+
},
|
|
168
|
+
"history": {
|
|
169
|
+
"0": [0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1],
|
|
170
|
+
"1": [0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1,0.00390625,1,1,1],
|
|
171
|
+
"7": [0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1,0.02734375,1,1,1]
|
|
172
|
+
}
|
|
173
|
+
},
|
|
121
174
|
"hex.sl": {
|
|
122
175
|
"hash": "5ab863c3",
|
|
123
176
|
"exact": true,
|
|
@@ -243,6 +296,20 @@
|
|
|
243
296
|
"1.25": [16,16,200,255,30,16,170,255,44,16,99,255,60,16,122,255,75,16,183,255,92,16,170,255,107,16,99,255,123,16,122,255,139,16,183,255,155,16,170,255,171,16,99,255,187,16,122,255,202,16,183,255,219,16,170,255,234,16,99,255,240,16,40,255,16,30,170,255,30,30,157,255,44,30,133,255,60,30,140,255,75,30,163,255,92,30,157,255,107,30,133,255,123,30,140,255,139,30,163,255,155,30,157,255,171,30,133,255,187,30,140,255,202,30,163,255,219,30,157,255,234,30,133,255,240,30,122,255,16,44,99,255,30,44,133,255,44,44,171,255,60,44,163,255,75,44,121,255,92,44,133,255,107,44,171,255,123,44,163,255,139,44,121,255,155,44,133,255,171,44,171,255,187,44,163,255,202,44,121,255,219,44,133,255,234,44,171,255,240,44,183,255,16,60,122,255,30,60,140,255,44,60,163,255,60,60,157,255,75,60,133,255,92,60,140,255,107,60,163,255,123,60,157,255,139,60,133,255,155,60,140,255,171,60,163,255,187,60,157,255,202,60,133,255,219,60,140,255,234,60,163,255,240,60,170,255,16,75,183,255,30,75,163,255,44,75,121,255,60,75,133,255,75,75,171,255,92,75,163,255,107,75,121,255,123,75,133,255,139,75,171,255,155,75,163,255,171,75,121,255,187,75,133,255,202,75,171,255,219,75,163,255,234,75,121,255,240,75,99,255,16,92,170,255,30,92,157,255,44,92,133,255,60,92,140,255,75,92,163,255,92,92,157,255,107,92,133,255,123,92,140,255,139,92,163,255,155,92,157,255,171,92,133,255,187,92,140,255,202,92,163,255,219,92,157,255,234,92,133,255,240,92,122,255,16,107,99,255,30,107,133,255,44,107,171,255,60,107,163,255,75,107,121,255,92,107,133,255,107,107,171,255,123,107,163,255,139,107,121,255,155,107,133,255,171,107,171,255,187,107,163,255,202,107,121,255,219,107,133,255,234,107,171,255,240,107,183,255,16,123,122,255,30,123,140,255,44,123,163,255,60,123,157,255,75,123,133,255,92,123,140,255,107,123,163,255,123,123,157,255,139,123,133,255,155,123,140,255,171,123,163,255,187,123,157,255,202,123,133,255,219,123,140,255,234,123,163,255,240,123,170,255,16,139,183,255,30,139,163,255,44,139,121,255,60,139,133,255,75,139,171,255,92,139,163,255,107,139,121,255,123,139,133,255,139,139,171,255,155,139,163,255,171,139,121,255,187,139,133,255,202,139,171,255,219,139,163,255,234,139,121,255,240,139,99,255,16,155,170,255,30,155,157,255,44,155,133,255,60,155,140,255,75,155,163,255,92,155,157,255,107,155,133,255,123,155,140,255,139,155,163,255,155,155,157,255,171,155,133,255,187,155,140,255,202,155,163,255,219,155,157,255,234,155,133,255,240,155,122,255,16,171,99,255,30,171,133,255,44,171,171,255,60,171,163,255,75,171,121,255,92,171,133,255,107,171,171,255,123,171,163,255,139,171,121,255,155,171,133,255,171,171,171,255,187,171,163,255,202,171,121,255,219,171,133,255,234,171,171,255,240,171,183,255,16,187,122,255,30,187,140,255,44,187,163,255,60,187,157,255,75,187,133,255,92,187,140,255,107,187,163,255,123,187,157,255,139,187,133,255,155,187,140,255,171,187,163,255,187,187,157,255,202,187,133,255,219,187,140,255,234,187,163,255,240,187,170,255,16,202,183,255,30,202,163,255,44,202,121,255,60,202,133,255,75,202,171,255,92,202,163,255,107,202,121,255,123,202,133,255,139,202,171,255,155,202,163,255,171,202,121,255,187,202,133,255,202,202,171,255,219,202,163,255,234,202,121,255,240,202,99,255,16,219,170,255,30,219,157,255,44,219,133,255,60,219,140,255,75,219,163,255,92,219,157,255,107,219,133,255,123,219,140,255,139,219,163,255,155,219,157,255,171,219,133,255,187,219,140,255,202,219,163,255,219,219,157,255,234,219,133,255,240,219,122,255,16,234,99,255,30,234,133,255,44,234,171,255,60,234,163,255,75,234,121,255,92,234,133,255,107,234,171,255,123,234,163,255,139,234,121,255,155,234,133,255,171,234,171,255,187,234,163,255,202,234,121,255,219,234,133,255,234,234,171,255,240,234,183,255,16,240,40,255,30,240,122,255,44,240,183,255,60,240,170,255,75,240,99,255,92,240,122,255,107,240,183,255,123,240,170,255,139,240,99,255,155,240,122,255,171,240,183,255,187,240,170,255,202,240,99,255,219,240,122,255,234,240,183,255,240,240,200,255]
|
|
244
297
|
}
|
|
245
298
|
},
|
|
299
|
+
"trail.sl": {
|
|
300
|
+
"hash": "839cfaaf",
|
|
301
|
+
"source": "// A fading trail: a spark circles, and what it leaves behind halves every third\n// of a second. Scaled by deltaTime, it fades the same at any frame rate.\nfloat4 main() {\n float4 last = tex2D(previous, uv);\n float2 at = 0.5 + 0.3 * float2(cos(time * 6), sin(time * 6));\n float spark = smoothstep(0.08, 0.02, length(uv - at));\n return max(last * pow(0.5, deltaTime * 3), float4(1, 0.6, 0.2, 1) * spark);\n}\n",
|
|
302
|
+
"frames": {
|
|
303
|
+
"0": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,13,5,2,252,201,122,248,157,124,73,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,222,176,106,186,112,88,50,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
304
|
+
"1": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,45,23,11,251,200,122,246,120,95,55,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,18,6,2,244,195,118,231,152,120,71,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,215,171,103,173,108,85,49,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
305
|
+
"7": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,217,173,104,177,151,120,71,79,2,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,9,3,1,253,201,122,250,247,197,120,238,240,191,116,222,122,96,56,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,63,34,21,205,163,98,157,233,185,112,207,129,101,59,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,218,174,105,180,205,163,98,155,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,125,99,57,52,209,166,100,162,99,77,44,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,13,4,2,203,161,97,152,125,99,57,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,178,141,84,114,89,69,39,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
|
|
306
|
+
},
|
|
307
|
+
"history": {
|
|
308
|
+
"0": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.006839752197265625,0.0041046142578125,0.0013685226440429688,0.006839752197265625,0.97314453125,0.58349609375,0.194580078125,0.97314453125,0.336669921875,0.2020263671875,0.06732177734375,0.336669921875,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.72802734375,0.436767578125,0.1455078125,0.72802734375,0.162109375,0.09722900390625,0.03240966796875,0.162109375,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
309
|
+
"1": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.04388427734375,0.0263214111328125,0.0087738037109375,0.04388427734375,0.96435546875,0.57861328125,0.19287109375,0.96435546875,0.1895751953125,0.11376953125,0.03790283203125,0.1895751953125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.00959014892578125,0.005756378173828125,0.001918792724609375,0.00959014892578125,0.90771484375,0.5439453125,0.1815185546875,0.90771484375,0.31396484375,0.1884765625,0.06280517578125,0.31396484375,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.67919921875,0.407470703125,0.1357421875,0.67919921875,0.1512451171875,0.0906982421875,0.0302276611328125,0.1512451171875,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
310
|
+
"7": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.6943359375,0.41650390625,0.1387939453125,0.6943359375,0.310791015625,0.1865234375,0.062164306640625,0.310791015625,0.0008101463317871094,0.0004856586456298828,0.00016188621520996094,0.0008101463317871094,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.004413604736328125,0.0026493072509765625,0.0008831024169921875,0.004413604736328125,0.978515625,0.5869140625,0.1956787109375,0.978515625,0.9326171875,0.55908203125,0.1865234375,0.9326171875,0.869140625,0.52099609375,0.1737060546875,0.869140625,0.1956787109375,0.11737060546875,0.039154052734375,0.1956787109375,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.0819091796875,0.04913330078125,0.0163726806640625,0.0819091796875,0.61376953125,0.3681640625,0.12274169921875,0.61376953125,0.8115234375,0.486328125,0.1622314453125,0.8115234375,0.2183837890625,0.1309814453125,0.043701171875,0.2183837890625,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.7041015625,0.421875,0.1407470703125,0.7041015625,0.607421875,0.3642578125,0.12139892578125,0.607421875,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.205810546875,0.12353515625,0.04119873046875,0.205810546875,0.63427734375,0.380859375,0.126953125,0.63427734375,0.12481689453125,0.07489013671875,0.02496337890625,0.12481689453125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.006313323974609375,0.0037899017333984375,0.0012636184692382812,0.006313323974609375,0.59765625,0.358154296875,0.11956787109375,0.59765625,0.2066650390625,0.1241455078125,0.0413818359375,0.2066650390625,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.447021484375,0.268310546875,0.08941650390625,0.447021484375,0.099609375,0.059722900390625,0.0199127197265625,0.099609375,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
|
|
311
|
+
}
|
|
312
|
+
},
|
|
246
313
|
"tuner.sl": {
|
|
247
314
|
"hash": "afa338bb",
|
|
248
315
|
"source": "// The whole shader, and nothing that is not the shader.\n//\n// No Properties block, no SubShader, no CGPROGRAM, no appdata or v2f, no\n// _Time.y: `uniform` declares both the slot and the name the sliders bind\n// against, and the file IS the fragment function.\nuniform float warp = 0.5;\nuniform float hue = 0.5;\nuniform float speed = 0.5;\n\nfloat4 main() {\n float t = time * (speed * 1.6 + 0.1);\n float2 p = (uv - 0.5) * (warp * 14 + 2);\n\n float v = sin(p.x + t)\n + sin(p.y - t * 0.8)\n + sin((p.x + p.y) * 0.7 + t * 1.3);\n\n float n = saturate(v * 0.22 + 0.5);\n float3 rgb = hsv2rgb(float3(frac(hue + n * 0.18), 0.75, n * 0.7 + 0.25));\n return float4(rgb, 1);\n}\n",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "onejs-sl",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "The OneJS shader language: a small typed language for per pixel programs, compiled to a portable IR and emitted as HLSL, WGSL or GLSL ES",
|
|
5
5
|
"main": "src/index.ts",
|
|
6
6
|
"types": "src/index.ts",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"author": "Singtaa",
|
|
44
44
|
"license": "MIT",
|
|
45
45
|
"scripts": {
|
|
46
|
-
"typecheck": "tsc --noEmit",
|
|
46
|
+
"typecheck": "tsc --noEmit && tsc --noEmit -p tsconfig.lib.json",
|
|
47
47
|
"lint": "eslint .",
|
|
48
48
|
"test": "vitest run && node quickjs/run.mjs",
|
|
49
49
|
"test:quickjs": "node quickjs/run.mjs",
|
package/src/body.ts
CHANGED
|
@@ -21,15 +21,24 @@
|
|
|
21
21
|
* gives common subexpression elimination for free.
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
|
-
import { INT_BOUNDS, SLError, TYPE, valueAt, type InputName, type NodeRef, type Program, type SLKind, type SLType, type ValueNode } from "./ir"
|
|
24
|
+
import { INT_BOUNDS, SLError, TYPE, valueAt, type InputName, type NodeRef, type StepInputName, type Program, type SLKind, type SLType, type ValueNode } from "./ir"
|
|
25
25
|
import { libClosure, LIB_FUNCTIONS } from "./lib"
|
|
26
26
|
import { LIB_HLSL } from "./lib/hlsl"
|
|
27
27
|
import { SLOP } from "./ops"
|
|
28
28
|
import { inVaryingFlow, local, printBody, structure, type Syntax } from "./structure"
|
|
29
29
|
|
|
30
30
|
export interface BodyTarget {
|
|
31
|
-
/**
|
|
32
|
-
|
|
31
|
+
/**
|
|
32
|
+
* An expression for each input, e.g. `{ uv: "SL_UV", time: "SL_TIME", ... }`.
|
|
33
|
+
*
|
|
34
|
+
* `frame` and `deltaTime` are for a host that steps a program frame by
|
|
35
|
+
* frame (`Specs/SL_NEXT.md` 4): `frame` a float holding the whole number
|
|
36
|
+
* of frames since the previous frame was last cleared, `deltaTime` the
|
|
37
|
+
* seconds since the frame before. A target without one cannot draw a
|
|
38
|
+
* program that reads it, and `emitBody` says so rather than print a
|
|
39
|
+
* shader that stands still. `readsOf(p)` says which a program reads.
|
|
40
|
+
*/
|
|
41
|
+
inputs: Record<InputName, string> & Partial<Record<StepInputName, string>>
|
|
33
42
|
/** The float4 holding a uniform slot. The body swizzles it down to the uniform's width. */
|
|
34
43
|
uniform: (slot: number, name: string) => string
|
|
35
44
|
/**
|
|
@@ -60,6 +69,24 @@ export interface BodyTarget {
|
|
|
60
69
|
* `tex2Dlod(s, float4(uv, 0, lod))` and Metal's `sample(s, uv, level(lod))`.
|
|
61
70
|
*/
|
|
62
71
|
sampleLevel: (slot: number, uv: string, lod: string) => string
|
|
72
|
+
/**
|
|
73
|
+
* A float4 of what this program drew the frame before, at `uv`, for a
|
|
74
|
+
* host that keeps it (`tex2D(previous, uv)`, `Specs/SL_NEXT.md` 4).
|
|
75
|
+
*
|
|
76
|
+
* - **Raw**: exactly what the program's result was, linear and straight
|
|
77
|
+
* alpha whatever `colour` says, with no decode on the way in. Kept at
|
|
78
|
+
* 16 bits a channel or more, so a slow fade does not stall on 8 bit
|
|
79
|
+
* steps.
|
|
80
|
+
* - **Bilinear and clamped**, with one level. Read it at that level
|
|
81
|
+
* wherever the call is (HLSL's `tex2Dlod`, not `tex2D`), so it needs no
|
|
82
|
+
* derivatives and reads the same inside a branch as outside one.
|
|
83
|
+
* - **Transparent black** on the first frame and after anything that
|
|
84
|
+
* clears it: a new size, a new program, a seek, time going back.
|
|
85
|
+
*
|
|
86
|
+
* Optional, and `emitBody` refuses a program that samples it when a
|
|
87
|
+
* target has none.
|
|
88
|
+
*/
|
|
89
|
+
previous?: (uv: string) => string
|
|
63
90
|
/**
|
|
64
91
|
* `linear`: `toLinear` calls `sl_toLinear`, for a host whose target holds
|
|
65
92
|
* linear light. `gamma`: `toLinear` is the identity, decided here, so hex
|
|
@@ -146,8 +173,11 @@ export function emitBody(p: Program, target: BodyTarget): Body {
|
|
|
146
173
|
case "const":
|
|
147
174
|
if (n.kind !== undefined) return n.type === 1 ? kindLit(n.kind, n.v[0]!) : `${typeName(n)}(${n.v.map((v) => kindLit(n.kind!, v)).join(", ")})`
|
|
148
175
|
return ctor(n.type, n.v.map(lit))
|
|
149
|
-
case "input":
|
|
150
|
-
|
|
176
|
+
case "input": {
|
|
177
|
+
const v = target.inputs[n.name]
|
|
178
|
+
if (v === undefined) throw new SLError(`this target has no ${n.name} input, and the program reads it`)
|
|
179
|
+
return v
|
|
180
|
+
}
|
|
151
181
|
case "uniform": {
|
|
152
182
|
const u = p.uniforms[n.slot]
|
|
153
183
|
if (u === undefined) throw new SLError(`a node reads uniform slot ${n.slot}, which is not declared`)
|
|
@@ -308,6 +338,9 @@ export function emitBody(p: Program, target: BodyTarget): Body {
|
|
|
308
338
|
textures.add(slot)
|
|
309
339
|
return target.sampleLevel(slot, a[0]!, a[1]!)
|
|
310
340
|
}
|
|
341
|
+
case SLOP.SAMPLE_PREVIOUS:
|
|
342
|
+
if (target.previous === undefined) throw new SLError("this target keeps no previous frame, and the program samples it")
|
|
343
|
+
return target.previous(a[0]!)
|
|
311
344
|
|
|
312
345
|
default:
|
|
313
346
|
throw new SLError(
|