 
     float middleVal = (cos(iGlobalTime * 2.) + 1.) / 2.;
     float theta = abs(mod(H, 1.) - middleVal);
-    float eps = 0.05 + (sin(iGlobalTime / 2) / 512.);
+    float eps = 0.05 + (sin(iGlobalTime / 2.) / 512.);
     S = V = (theta > eps) ? (eps / theta) : 0.85;
     color = vec4(hsv2rgb(H, S, V), 1.);
 }

#define poly6rp(val0, val1, t) mix(val0, val1, t * t * t * (t * (t * 6. - 15.) + 10.))

float perlin(vec2 pos, float gridStep)
{
    vec2 pLL = floor(pos / gridStep);
    vec2 gp, dpos, dpos0, eps=vec2(1, 0);




#define hsv2rgb(H, S, V)  V * mix(vec3(1.), clamp(abs(fract(H + vec3(3., 2., 1.) / 3.) * 6. - 3.) - 1., 0., 1.), S)

#define CS(p) vec2(cos(p), sin(p))

