{"version":2,"baseVals":{"rating":4,"gammaadj":1,"decay":0.955,"echo_zoom":0.997,"echo_alpha":0.5,"echo_orient":1,"wave_mode":7,"additivewave":1,"modwavealphabyvolume":1,"wave_brighten":0,"wave_a":0.001,"wave_scale":1.286,"wave_smoothing":0.63,"modwavealphastart":0.71,"modwavealphaend":1.3,"warpanimspeed":30.965,"warpscale":2.572,"fshader":1,"zoom":1.00901,"warp":0.00054,"wave_r":0.65,"wave_g":0.65,"wave_b":0.65,"mv_x":64,"mv_y":20.16,"mv_l":0.4,"mv_g":0.4,"mv_a":0},"shapes":[{"baseVals":{"textured":1,"rad":1.20321,"tex_zoom":1.22019,"a":0,"a2":0.5,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""},{"baseVals":{"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""},{"baseVals":{"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""},{"baseVals":{"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""}],"waves":[{"baseVals":{"enabled":1,"usedots":1,"thick":1,"additive":1},"init_eqs_eel":"ma=.5;\nmy=.5;\nmd=0; //direction 0 1 2 3","frame_eqs_eel":"","point_eqs_eel":"oldmd=md;\nmd=(md+rand(4))%4;\nmd=if(equal(md,oldmd),(md+1)%4,md);\n\nmx=mx+(equal(md,0)*.002*bass);\nmx=mx-(equal(md,1)*.002*bass);\nmy=my+(equal(md,2)*.002*treb);\nmy=my-(equal(md,3)*.002*treb);\n\nmx=if(above(mx,.9),.5,mx);\nmx=if(below(mx,.1),.5,mx);\nmy=if(above(my,.9),.5,my);\nmy=if(below(my,.1),.5,my);\n\nx=mx;\ny=my;\na=bass*.1;\n\nr=bass*.5;"},{"baseVals":{"enabled":1,"usedots":1,"thick":1,"additive":1},"init_eqs_eel":"mx=.5;\nmy=.5;\nmd=1;","frame_eqs_eel":"","point_eqs_eel":"oldmd=md;\nmd=(md+rand(4))%4;\nmd=if(equal(md,oldmd),(md+1)%4,md);\n\nmx=mx+(equal(md,0)*.002*bass);\nmx=mx-(equal(md,1)*.002*bass);\nmy=my+(equal(md,2)*.002*treb);\nmy=my-(equal(md,3)*.002*treb);\n\nmx=if(above(mx,.9),.5,mx);\nmx=if(below(mx,.1),.5,mx);\nmy=if(above(my,.9),.5,my);\nmy=if(below(my,.1),.5,my);\n\nx=mx;\ny=my;\na=bass*.1;\n\ng=treb*.5;"},{"baseVals":{"enabled":1,"usedots":1,"thick":1,"additive":1},"init_eqs_eel":"mx=.5;\nmy=.5;\nmd=2;","frame_eqs_eel":"","point_eqs_eel":"oldmd=md;\nmd=(md+rand(4))%4;\nmd=if(equal(md,oldmd),(md+1)%4,md);\n\nmx=mx+(equal(md,0)*.002*bass);\nmx=mx-(equal(md,1)*.002*bass);\nmy=my+(equal(md,2)*.002*treb);\nmy=my-(equal(md,3)*.002*treb);\n\nmx=if(above(mx,.9),.5,mx);\nmx=if(below(mx,.1),.5,mx);\nmy=if(above(my,.9),.5,my);\nmy=if(below(my,.1),.5,my);\n\nx=mx;\ny=my;\na=bass*.1;"},{"baseVals":{"enabled":1,"usedots":1,"thick":1,"additive":1},"init_eqs_eel":"mx=.5;\nmy=.4;\nmd=3;","frame_eqs_eel":"","point_eqs_eel":"oldmd=md;\nmd=(md+rand(4))%4;\nmd=if(equal(md,oldmd),(md+1)%4,md);\n\nmx=mx+(equal(md,0)*.002*bass);\nmx=mx-(equal(md,1)*.002*bass);\nmy=my+(equal(md,2)*.002*treb);\nmy=my-(equal(md,3)*.002*treb);\n\nmx=if(above(mx,.9),.5,mx);\nmx=if(below(mx,.1),.5,mx);\nmy=if(above(my,.9),.5,my);\nmy=if(below(my,.1),.5,my);\n\nx=mx;\ny=my;\na=bass*.1;"}],"init_eqs_eel":"","frame_eqs_eel":"wave_r = 0.85 + 0.25*sin(0.437*time+1);\nwave_g = 0.85 + 0.25*sin(0.544*time+2);\nwave_b = 0.85 + 0.25*sin(0.751*time+3);\nrot = rot + 0.010*( 0.60*sin(0.381*time) + 0.40*sin(0.579*time) );\ncx = cx + 0.210*( 0.60*sin(0.374*time) + 0.40*sin(0.294*time) );\ncy = cy + 0.210*( 0.60*sin(0.393*time) + 0.40*sin(0.223*time) );\ndx = dx + 0.003*( 0.60*sin(0.234*time) + 0.40*sin(0.277*time) );\ndy = dy + 0.003*( 0.60*sin(0.284*time) + 0.40*sin(0.247*time) );\ndecay = decay - 0.01*equal(frame%6,0);\ndx = dx + dx_residual;\ndy = dy + dy_residual;\nbass_thresh = above(bass_att,bass_thresh)*2 + (1-above(bass_att,bass_thresh))*((bass_thresh-1.3)*0.96+1.3);\ndx_residual = equal(bass_thresh,2.13)*0.016*sin(time*7) + (1-equal(bass_thresh,2.13))*dx_residual;\ndy_residual = equal(bass_thresh,2.13)*0.012*sin(time*9) + (1-equal(bass_thresh,2.13))*dy_residual;\nwave_x = wave_x - dx_residual*7;\nwave_y = wave_y - dy_residual*7;\nwave_mystery = time*0.03;\n\n//zoom = zoom + 0.005*( 0.60*sin(0.1934*time+3) + 0.40*sin(0.307*time+9) );\n//zoom = zoom + max(0,bass_att-1.1)*0.2;\n//warp = warp + max(0,treb_att-1.1)*1.0;\n\n// this is a great way to respond to beats:\n// once you get one, let it decay at a constant rate!!\nrg = max(rg*0.77, 0.02 + 0.5*min(2,max(0,mid_att-1)*1.3));\nq9 = rg;\n\nzoom = zoom + q9*0.1;","pixel_eqs_eel":"","warp":" shader_body { \n  vec4 tmpvar_1;\n  tmpvar_1.w = 1.0;\n  tmpvar_1.xyz = (texture (sampler_pw_main, uv).xyz - 0.004);\n  ret = tmpvar_1.xyz;\n }","comp":" shader_body { \n  vec2 uv_1;\n  float ang2_2;\n  ang2_2 = (fract((0.9549295 * ang)) / 6.0);\n  ang2_2 = (abs((ang2_2 - 0.08333334)) * 6.283185);\n  vec2 tmpvar_3;\n  tmpvar_3.x = cos(ang2_2);\n  tmpvar_3.y = sin(ang2_2);\n  uv_1 = (0.5 + ((\n    (0.4 * (rad * sqrt(dot (texsize.xy, texsize.xy))))\n   * tmpvar_3) * texsize.zw));\n  vec4 tmpvar_4;\n  tmpvar_4.w = 1.0;\n  tmpvar_4.xyz = (1.4 * pow ((\n    clamp (((texture (sampler_blur1, uv_1).xyz * scale1) + bias1), 0.0, 1.0)\n   * \n    (texture (sampler_pc_main, uv_1).xyz - ((texture (sampler_blur3, uv_1).xyz * scale3) + bias3))\n  ), vec3(0.5, 0.5, 0.5)));\n  ret = tmpvar_4.xyz;\n }"}