{"version":2,"baseVals":{"rating":1,"gammaadj":1,"decay":1,"echo_zoom":1,"wave_mode":1,"wave_dots":1,"wave_thick":1,"modwavealphabyvolume":1,"wrap":0,"wave_a":0.001,"wave_scale":2.346,"wave_smoothing":0.45,"wave_mystery":0.08,"modwavealphastart":0,"modwavealphaend":1.32,"warpscale":1.331,"zoom":0.99951,"warp":0.0101,"wave_r":0,"wave_g":0.99,"ob_size":0.005,"ob_a":0.1,"ib_size":0,"mv_x":64,"mv_y":48,"mv_l":1.85,"mv_r":0.5,"mv_g":0.5,"mv_b":0.5,"mv_a":0},"shapes":[{"baseVals":{"enabled":1,"rad":0.04896,"tex_ang":1.00531,"tex_zoom":1.53117,"r":0.5,"g":1,"b":0.9,"r2":0.83,"g2":0.93,"b2":0.8,"a2":1,"border_b":0,"border_a":0},"init_eqs_eel":"","frame_eqs_eel":"xi = xi - dx*q22/200;\nyi = yi - dy*q23/200;\n\nlow = 0; \nhigh = 1;\n\nk0x = below(xi,low);\nk1x = above(xi,high);\nk0y = below(yi,low);\nk1y = above(yi,high);\n\ndx = k0x*1 + k1x*-1;\ndy = k0y*1 + k1y*-1;\n\n//xi = 0; yi = 0;\nx = xi;\ny = yi;\n\ntrel = time/2+q20;\n\nx = .5+sin(trel*2);\ny = .5+cos(trel*1.3 +q28/3);\n\na = q26/4+.2; \n//a = 1;"},{"baseVals":{"thickoutline":1,"x":0.4,"rad":2.36696,"tex_ang":3.45575,"tex_zoom":0.99305,"r":0.5,"b":1,"a":0.2,"r2":0.7,"g2":0.4,"border_r":0.5,"border_g":0.5,"border_b":0.5,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":"a2 =0;a = 0;\na = q24/2;"},{"baseVals":{"enabled":1,"x":0.503,"rad":0.03886,"tex_zoom":0.60986,"g":0.1,"a":0.9,"r2":1,"b2":1,"border_r":0.5,"border_g":0.5,"border_b":0.5,"border_a":0},"init_eqs_eel":"","frame_eqs_eel":"x = rand(10)/10;\ny = rand(10)/10;\n\nr = rand(4)/3;\ng = rand(4)/3;\nb = rand(4)/3;\n\na = min(q21/2 ,.9);\nrad = a *a/3 ;\n"},{"baseVals":{"sides":63,"textured":1,"y":1,"rad":0.54822,"tex_zoom":0.49981,"g":1,"b":1,"r2":1,"b2":1,"border_r":0.5,"border_g":0.5,"border_b":0.5,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""}],"waves":[{"baseVals":{"sep":120,"additive":1,"scaling":0.89152,"smoothing":0.82,"a":0.6,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":"t2 = t2 + bass_att;","point_eqs_eel":"k1 = (sample*100)%2;\nk2 = (sample*100)%4;\nxi = value1*k1 + xi*(1-k1);\nyi = value2*(1-k1) + yi*k1;\n\nx = .5 + xi;\ny = .5 + yi;\n\na = q22/8; \na = min(a,.2);"},{"baseVals":{"usedots":1,"thick":1,"scaling":0.89152,"smoothing":0.82,"a":0.1,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":"tm = time*.1;\nt1 = t1*sin(tm*t4) + (1-t1)*sin(tm*t7);\nt2 = t2*sin(tm*t5) + (1-t2)*sin(tm*t8);\nt3 = t3*sin(tm*t6) + (1-t3)*sin(tm*1);\n\ntic = min(time - tin,1);\ntin = time;\n\ntva = (tic*q1*.5);\ntvb = (tic*q2*.5);\ntvc = (tic*q3*.5);\n\nq1 = tva;\nq2 = tvb;\nq3 = tvc;\n\nsz = .5;\nlen = q4;\nt4 = len;","point_eqs_eel":"xi = rand(100)/100;\nyi = rand(100)/100;\n\nx = xi; y = yi;\n\na = q21/15;"},{"baseVals":{"thick":1,"scaling":0.89152,"smoothing":0.82,"r":0,"g":0.2,"b":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":"tm = time*.1;\nt1 = t1*sin(tm*t4) + (1-t1)*sin(tm*t7);\nt2 = t2*sin(tm*t5) + (1-t2)*sin(tm*t8);\nt3 = t3*sin(tm*t6) + (1-t3)*sin(tm*1);\n\ntic = min(time - tin,1);\ntin = time;\n\ntva = (tic*q1*.5);\ntvb = (tic*q2*.5);\ntvc = (tic*q3*.5);\n\nq1 = tva;\nq2 = tvb;\nq3 = tvc;\n\nsz = .5;\nlen = 1;\nt4 = len;","point_eqs_eel":""},{"baseVals":{"spectrum":1,"usedots":1,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":"","point_eqs_eel":""}],"init_eqs_eel":"","frame_eqs_eel":"wave_r = wave_r + 0.5*sin(time*1.13);\nwave_g = wave_g + 0.5*sin(time*1.23);\nwave_b = wave_b + 0.5*sin(time*1.33);\n\nwave_x = wave_x + 0.2*sin(0.32*time);\nwave_y = wave_y + 0.2*cos(0.32*time);\n\nob_r = wave_r;\nob_g = wave_g;\nob_b = wave_b;\n// the m�bius transformation\n// z -> (az+b)/(cz-d); where a,b,c,d are complex numbers and z will be the uv-vector\n// (az+b)/(cz-d) = a/c + mu/(cz+d), with mu = (bc-ad)/c\n// so a/c and mu can be calculated outside of the shader\n\n//before inversion\n\nscale = 1;\nangle = time*.2;\ntranslation_x = 0;\ntranslation_y = 0.12;\n\na_r = cos(angle)*scale;\na_i = sin(angle)*scale;\nb_r = translation_x;\nb_i = translation_y;\n\n//complex inverted\nscale = 1;\nangle = sin(time*0.1337)*0.3;\ntranslation_u = 0;\ntranslation_v = -0.2;\n\n// c\nq15 = cos(angle)*scale;\nq16 = sin(angle)*scale;\n\n// d\nq17 = translation_u;\nq18 = translation_v;\n\n// c^(-1)\nc_inv_r = q15/(q15*q15+q16*q16);\nc_inv_i = q16/(q15*q15+q16*q16);\n\n// a*c^(-1)\nq11 = (a_r*c_inv_r - a_i*c_inv_i);\nq12 = (a_r*c_inv_i - a_i*c_inv_r);\n\n// (bc-ad)\nbcad_r = (b_r*q15 - b_i*q16)-(a_r*q17-a_i*q18);\nbcad_i = (b_r*q16 - b_i*q15)-(a_r*q18-a_i*q17);\n\n// mu*c^(-1)\nq13 = bcad_r*c_inv_r - bcad_i*c_inv_i;\nq14 = bcad_r*c_inv_i - bcad_i*c_inv_r;","pixel_eqs_eel":"thresh = above(bass_att,thresh)*2+(1-above(bass_att,thresh))*((thresh-1.3)*0.96+1.3);\ndx_r = equal(thresh,2)*0.015*sin(5*time)+(1-equal(thresh,2))*dx_r;\ndy_r = equal(thresh,2)*0.015*sin(6*time)+(1-equal(thresh,2))*dy_r;\nzoom = zoom + 0.0095*(sin(10*ang) + sin(sin(time*2*sin(time)*rad))*0.3 - cos(rad)*0.1);\nrot = rot + 0.08*abs(0.746-rad)*sin(2.2*(0.5-rad)+5.7*sin(0.1*time));\nsx = sx + 0.01*(0.99*1-rad)*sin(0.733*time)*below(sin(time),0);\nsy = sy + 0.01*(0.99*1-rad)*cos(0.953*time)*above(sin(time),0);\nzoom = zoom - 0.015*(0.5*abs(3)-rad)*below(rad,1.5);","warp":" shader_body { \n  vec3 ret_1;\n  vec2 tmpvar_2;\n  tmpvar_2 = (texsize.zw * 8.0);\n  vec3 tmpvar_3;\n  tmpvar_3 = (((texture (sampler_blur1, \n    (uv + (vec2(1.0, 0.0) * tmpvar_2))\n  ).xyz * scale1) + bias1) - ((texture (sampler_blur1, \n    (uv - (vec2(1.0, 0.0) * tmpvar_2))\n  ).xyz * scale1) + bias1));\n  vec3 tmpvar_4;\n  tmpvar_4 = (((texture (sampler_blur1, \n    (uv + (vec2(0.0, 1.0) * tmpvar_2))\n  ).xyz * scale1) + bias1) - ((texture (sampler_blur1, \n    (uv - (vec2(0.0, 1.0) * tmpvar_2))\n  ).xyz * scale1) + bias1));\n  vec2 tmpvar_5;\n  tmpvar_5.x = tmpvar_3.x;\n  tmpvar_5.y = tmpvar_4.x;\n  vec2 tmpvar_6;\n  tmpvar_6 = (uv + ((tmpvar_5 * texsize.zw) * 4.0));\n  vec2 tmpvar_7;\n  tmpvar_7.x = tmpvar_3.y;\n  tmpvar_7.y = tmpvar_4.y;\n  vec2 tmpvar_8;\n  tmpvar_8 = (uv + ((tmpvar_7 * texsize.zw) * 4.0));\n  vec2 tmpvar_9;\n  tmpvar_9.x = tmpvar_3.z;\n  tmpvar_9.y = tmpvar_4.z;\n  vec2 tmpvar_10;\n  tmpvar_10 = (uv + ((tmpvar_9 * texsize.zw) * 4.0));\n  ret_1.x = (texture (sampler_main, tmpvar_6).x - ((texture (sampler_main, tmpvar_6).xyz - \n    ((texture (sampler_blur3, tmpvar_6).xyz * scale3) + bias3)\n  ).x * 0.02));\n  ret_1.y = (texture (sampler_main, tmpvar_8).y - ((texture (sampler_main, tmpvar_8).xyz - \n    ((texture (sampler_blur3, tmpvar_8).xyz * scale3) + bias3)\n  ).y * 0.02));\n  ret_1.z = (texture (sampler_main, tmpvar_10).z - ((texture (sampler_main, tmpvar_10).xyz - \n    ((texture (sampler_blur3, tmpvar_10).xyz * scale3) + bias3)\n  ).z * 0.02));\n  ret_1 = (ret_1 + ((\n    (texture (sampler_noise_lq, (((uv_orig * texsize.xy) * (texsize_noise_lq.zw * 0.3)) + rand_frame.xy)).xyz - 0.5)\n   * 0.1) * (bass - treb)));\n  ret_1 = (ret_1 - ((ret_1.yzx * 0.1) - 0.04));\n  vec4 tmpvar_11;\n  tmpvar_11.w = 1.0;\n  tmpvar_11.xyz = ret_1;\n  ret = tmpvar_11.xyz;\n }","comp":" shader_body { \n  vec2 tmpvar_1;\n  tmpvar_1 = (texsize.zw * 4.0);\n  vec2 tmpvar_2;\n  tmpvar_2.x = (((texture (sampler_blur1, \n    (uv + (vec2(1.0, 0.0) * tmpvar_1))\n  ).xyz * scale1) + bias1) - ((texture (sampler_blur1, \n    (uv - (vec2(1.0, 0.0) * tmpvar_1))\n  ).xyz * scale1) + bias1)).y;\n  tmpvar_2.y = (((texture (sampler_blur1, \n    (uv + (vec2(0.0, 1.0) * tmpvar_1))\n  ).xyz * scale1) + bias1) - ((texture (sampler_blur1, \n    (uv - (vec2(0.0, 1.0) * tmpvar_1))\n  ).xyz * scale1) + bias1)).y;\n  vec4 tmpvar_3;\n  tmpvar_3.w = 1.0;\n  tmpvar_3.xyz = mix ((texture (sampler_fc_main, (uv - \n    (tmpvar_2 * 0.4)\n  )).x * pow (hue_shader.zxy, vec3(4.0, 4.0, 4.0))), (mix (\n    (pow (hue_shader, vec3(6.0, 6.0, 6.0)) * 1.2)\n  , \n    pow (hue_shader, vec3(8.0, 8.0, 8.0))\n  .yzx, texture (sampler_main, uv).yyy) * 2.0), vec3(((\n    (texture (sampler_blur1, uv).xyz * scale1)\n   + bias1).z * 0.7)));\n  ret = tmpvar_3.xyz;\n }"}