{"baseVals":{"rating":5,"gammaadj":1.56,"decay":1,"echo_zoom":0.362,"echo_orient":1,"wave_thick":1,"wave_brighten":0,"darken":1,"wave_a":0.001,"wave_scale":1.599,"wave_smoothing":0,"wave_mystery":-0.5,"modwavealphastart":2,"modwavealphaend":2,"warpscale":0.107,"zoomexp":0.1584,"fshader":1,"warp":0.01,"wave_r":0.51,"wave_g":0.5,"ob_size":0.05,"ob_a":1,"ib_r":1,"ib_g":1,"ib_b":1,"ib_a":1,"mv_x":64,"mv_y":48,"mv_l":0.5,"mv_r":0,"mv_g":0,"mv_b":0,"mv_a":0.05},"shapes":[{"baseVals":{"enabled":0}},{"baseVals":{"enabled":0}},{"baseVals":{"enabled":0}},{"baseVals":{"enabled":0}}],"waves":[{"baseVals":{"enabled":0}},{"baseVals":{"enabled":0}},{"baseVals":{"enabled":0}},{"baseVals":{"enabled":0}}],"init_eqs_str":"a.y3=0;a.y1=0;a.w2=0;a.ref_ang=0;a.x1=0;a.vx3=0;a.q6=0;a.q1=0;a.q5=0;a.vx1=0;a.vx4=0;a.x3=0;a.q4=0;a.vy4=0;a.bounce=0;a.x4=0;a.w1=0;a.r=0;a.x2=0;a.vy2=0;a.y2=0;a.vy1=0;a.q2=0;a.v1=0;a.vx2=0;a.q3=0;a.y4=0;a.q7=0;a.vy3=0;a.v2=0;a.q8=0;a.x1=.5;a.x2=.51;a.y2=.9;a.y1=.7;a.x3=.8;a.y3=.5;a.x4=.2;a.y4=.5;a.ax1=0;a.ay1=0;a.ax2=0;a.ay2=0;a.ax3=0;a.ay3=0;a.vx1=0;a.vx2=0;","frame_eqs_str":"a.wave_a=0;a.r=.04+.004*Math.max(a.bass_att,a.treb_att);a.bounce=below(a.y1,a.r);a.y1+=a.vy1;a.vy1=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vy1)+.1*(a.r-a.y1):a.vy1-div(.006,a.fps);a.bounce=below(a.x1,a.r);a.x1+=a.vx1;a.vx1=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vx1)+.1*(a.r-a.x1):a.vx1;a.bounce=above(a.x1,1-a.r);a.vx1=.00001<Math.abs(a.bounce)?.94*-Math.abs(a.vx1)+.04*(1-a.r-a.x1):a.vx1;a.bounce=below(a.y2,a.r);a.y2+=a.vy2;a.vy2=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vy2)+\n.1*(a.r-a.y2):a.vy2-div(.006,a.fps);a.bounce=below(a.x2,a.r);a.x2+=a.vx2;a.vx2=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vx2)+.1*(a.r-a.x2):a.vx2;a.bounce=above(a.x2,1-a.r);a.vx2=.00001<Math.abs(a.bounce)?.94*-Math.abs(a.vx2)+.1*(1-a.r-a.x2):a.vx2;a.bounce=below(a.y3,a.r);a.y3+=a.vy3;a.vy3=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vy3)+.1*(a.r-a.y3):a.vy3-div(.006,a.fps);a.bounce=below(a.x3,a.r);a.x3+=a.vx3;a.vx3=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vx3)+.1*(a.r-a.x3):a.vx3;a.bounce=above(a.x3,\n1-a.r);a.vx3=.00001<Math.abs(a.bounce)?.94*-Math.abs(a.vx3)+.1*(1-a.r-a.x3):a.vx3;a.bounce=below(a.y4,a.r);a.y4+=a.vy4;a.vy4=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vy4)+.1*(a.r-a.y4):a.vy4-div(.006,a.fps);a.bounce=below(a.x4,a.r);a.x4+=a.vx4;a.vx4=.00001<Math.abs(a.bounce)?.94*Math.abs(a.vx4)+.1*(a.r-a.x4):a.vx4;a.bounce=above(a.x4,1-a.r);a.vx4=.00001<Math.abs(a.bounce)?.94*-Math.abs(a.vx4)+.1*(1-a.r-a.x4):a.vx4;a.bounce=below(sqrt(sqr(a.x1+a.vx1-a.x2-a.vx2)+sqr(a.y1+a.vy1-a.y2-a.vy2)),2*a.r);a.ref_ang=\nMath.atan2(a.x2-a.x1,a.y2-a.y1)+Math.asin(1);a.v1=sqrt(a.vx1*a.vx1+a.vy1*a.vy1);a.v2=sqrt(a.vx2*a.vx2+a.vy2*a.vy2);a.w1=Math.atan2(a.vx1,a.vy1);a.w2=Math.atan2(a.vx2,a.vy2);a.vx1=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vx1;a.vy1=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vy1;\na.vx2=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vx2;a.vy2=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vy2;a.bounce=below(sqrt(sqr(a.x1+a.vx1-a.x3-a.vx3)+sqr(a.y1+a.vy1-a.y3-a.vy3)),2*a.r);a.ref_ang=Math.atan2(a.x3-a.x1,a.y3-a.y1)+Math.asin(1);a.v1=sqrt(a.vx1*a.vx1+a.vy1*a.vy1);a.v2=\nsqrt(a.vx3*a.vx3+a.vy3*a.vy3);a.w1=Math.atan2(a.vx1,a.vy1);a.w2=Math.atan2(a.vx3,a.vy3);a.vx1=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vx1;a.vy1=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vy1;a.vx3=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.sin(a.ref_ang+\nMath.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vx3;a.vy3=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vy3;a.bounce=below(sqrt(sqr(a.x2+a.vx2-a.x3-a.vx3)+sqr(a.y2+a.vy2-a.y3-a.vy3)),2*a.r);a.ref_ang=Math.atan2(a.x3-a.x2,a.y3-a.y2)+Math.asin(1);a.v1=sqrt(a.vx2*a.vx2+a.vy2*a.vy2);a.v2=sqrt(a.vx3*a.vx3+a.vy3*a.vy3);a.w1=Math.atan2(a.vx2,a.vy2);a.w2=Math.atan2(a.vx3,a.vy3);a.vx2=.00001<\nMath.abs(a.bounce)?Math.sin(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vx2;a.vy2=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vy2;a.vx3=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vx3;a.vy3=.00001<Math.abs(a.bounce)?\nMath.cos(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vy3;a.bounce=below(sqrt(sqr(a.x1+a.vx1-a.x4-a.vx4)+sqr(a.y1+a.vy1-a.y4-a.vy4)),2*a.r);a.ref_ang=Math.atan2(a.x4-a.x1,a.y4-a.y1)+Math.asin(1);a.v1=sqrt(a.vx1*a.vx1+a.vy1*a.vy1);a.v2=sqrt(a.vx4*a.vx4+a.vy4*a.vy4);a.w1=Math.atan2(a.vx1,a.vy1);a.w2=Math.atan2(a.vx4,a.vy4);a.vx1=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*\na.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vx1;a.vy1=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vy1;a.vx4=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vx4;a.vy4=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-\na.ref_ang-Math.asin(1)):a.vy4;a.bounce=below(sqrt(sqr(a.x2+a.vx2-a.x4-a.vx4)+sqr(a.y2+a.vy2-a.y4-a.vy4)),2*a.r);a.ref_ang=Math.atan2(a.x4-a.x2,a.y4-a.y2)+Math.asin(1);a.v1=sqrt(a.vx2*a.vx2+a.vy2*a.vy2);a.v2=sqrt(a.vx4*a.vx4+a.vy4*a.vy4);a.w1=Math.atan2(a.vx2,a.vy2);a.w2=Math.atan2(a.vx4,a.vy4);a.vx2=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vx2;a.vy2=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*\na.v1*Math.cos(a.w1-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vy2;a.vx4=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vx4;a.vy4=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vy4;a.bounce=below(sqrt(sqr(a.x3+a.vx3-a.x4-a.vx4)+sqr(a.y3+a.vy3-\na.y4-a.vy4)),2*a.r);a.ref_ang=Math.atan2(a.x4-a.x3,a.y4-a.y3)+Math.asin(1);a.v1=sqrt(a.vx3*a.vx3+a.vy3*a.vy3);a.v2=sqrt(a.vx4*a.vx4+a.vy4*a.vy4);a.w1=Math.atan2(a.vx3,a.vy3);a.w2=Math.atan2(a.vx4,a.vy4);a.vx3=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-a.ref_ang-Math.asin(1)):a.vx3;a.vy3=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v1*Math.cos(a.w1-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v2*Math.cos(a.w2-\na.ref_ang-Math.asin(1)):a.vy3;a.vx4=.00001<Math.abs(a.bounce)?Math.sin(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.sin(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vx4;a.vy4=.00001<Math.abs(a.bounce)?Math.cos(a.ref_ang)*a.v2*Math.cos(a.w2-a.ref_ang)+Math.cos(a.ref_ang+Math.asin(1))*a.v1*Math.cos(a.w1-a.ref_ang-Math.asin(1)):a.vy4;a.q1=.5-a.x1;a.q2=-.5+a.y1;a.q3=.5-a.x2;a.q4=-.5+a.y2;a.q5=.5-a.x3;a.q6=-.5+a.y3;a.q7=.5-a.x4;a.q8=-.5+a.y4;","pixel_eqs_str":"","pixel_eqs":"","warp":"vec2 xlat_mutablefactorA;\n shader_body { \n  vec2 uv_1;\n  uv_1 = (uv - 0.5);\n  vec2 tmpvar_2;\n  tmpvar_2.x = q1;\n  tmpvar_2.y = q2;\n  xlat_mutablefactorA = (uv_1 + tmpvar_2);\n  vec2 tmpvar_3;\n  tmpvar_3 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_4;\n  tmpvar_4.x = q3;\n  tmpvar_4.y = q4;\n  xlat_mutablefactorA = (uv_1 + tmpvar_4);\n  vec2 tmpvar_5;\n  tmpvar_5 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_6;\n  tmpvar_6.x = q5;\n  tmpvar_6.y = q6;\n  xlat_mutablefactorA = (uv_1 + tmpvar_6);\n  vec2 tmpvar_7;\n  tmpvar_7 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_8;\n  tmpvar_8.x = q7;\n  tmpvar_8.y = q8;\n  xlat_mutablefactorA = (uv_1 + tmpvar_8);\n  vec2 tmpvar_9;\n  tmpvar_9 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_10;\n  tmpvar_10.x = ((tmpvar_3.x * tmpvar_5.x) - (tmpvar_3.y * tmpvar_5.y));\n  tmpvar_10.y = ((tmpvar_3.x * tmpvar_5.y) + (tmpvar_3.y * tmpvar_5.x));\n  vec2 tmpvar_11;\n  tmpvar_11.x = ((tmpvar_7.x * tmpvar_9.x) - (tmpvar_7.y * tmpvar_9.y));\n  tmpvar_11.y = ((tmpvar_7.x * tmpvar_9.y) + (tmpvar_7.y * tmpvar_9.x));\n  xlat_mutablefactorA = tmpvar_10;\n  vec2 tmpvar_12;\n  tmpvar_12.x = ((tmpvar_10.x * tmpvar_11.x) - (tmpvar_10.y * tmpvar_11.y));\n  tmpvar_12.y = ((tmpvar_10.x * tmpvar_11.y) + (tmpvar_10.y * tmpvar_11.x));\n  vec2 tmpvar_13;\n  tmpvar_13.x = tmpvar_12.x;\n  tmpvar_13.y = -(tmpvar_12.y);\n  uv_1 = ((tmpvar_13 / (\n    (tmpvar_12.x * tmpvar_12.x)\n   + \n    (tmpvar_12.y * tmpvar_12.y)\n  )) * 48.0);\n  uv_1 = (0.5 + ((1.0 - \n    abs(((fract(\n      (uv_1 * 0.5)\n    ) * 2.0) - 1.0))\n  ) - 0.5));\n  vec4 tmpvar_14;\n  tmpvar_14.w = 1.0;\n  tmpvar_14.xyz = (texture (sampler_main, fract(uv_1)) + 0.23).xyz;\n  ret = tmpvar_14.xyz;\n }","comp":"uniform sampler2D sampler_sunrise;\nvec2 xlat_mutablefactorA;\n shader_body { \n  vec2 uv_1;\n  vec2 tmpvar_2;\n  tmpvar_2 = (uv - 0.5);\n  vec2 tmpvar_3;\n  tmpvar_3.x = q1;\n  tmpvar_3.y = q2;\n  xlat_mutablefactorA = (tmpvar_2 + tmpvar_3);\n  vec2 tmpvar_4;\n  tmpvar_4 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_5;\n  tmpvar_5.x = q3;\n  tmpvar_5.y = q4;\n  xlat_mutablefactorA = (tmpvar_2 + tmpvar_5);\n  vec2 tmpvar_6;\n  tmpvar_6 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_7;\n  tmpvar_7.x = q5;\n  tmpvar_7.y = q6;\n  xlat_mutablefactorA = (tmpvar_2 + tmpvar_7);\n  vec2 tmpvar_8;\n  tmpvar_8 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_9;\n  tmpvar_9.x = q7;\n  tmpvar_9.y = q8;\n  xlat_mutablefactorA = (tmpvar_2 + tmpvar_9);\n  vec2 tmpvar_10;\n  tmpvar_10 = (xlat_mutablefactorA * vec2(8.0, 8.0));\n  vec2 tmpvar_11;\n  tmpvar_11.x = ((tmpvar_4.x * tmpvar_6.x) - (tmpvar_4.y * tmpvar_6.y));\n  tmpvar_11.y = ((tmpvar_4.x * tmpvar_6.y) + (tmpvar_4.y * tmpvar_6.x));\n  vec2 tmpvar_12;\n  tmpvar_12.x = ((tmpvar_8.x * tmpvar_10.x) - (tmpvar_8.y * tmpvar_10.y));\n  tmpvar_12.y = ((tmpvar_8.x * tmpvar_10.y) + (tmpvar_8.y * tmpvar_10.x));\n  xlat_mutablefactorA = tmpvar_11;\n  vec2 tmpvar_13;\n  tmpvar_13.x = ((tmpvar_11.x * tmpvar_12.x) - (tmpvar_11.y * tmpvar_12.y));\n  tmpvar_13.y = ((tmpvar_11.x * tmpvar_12.y) + (tmpvar_11.y * tmpvar_12.x));\n  vec2 tmpvar_14;\n  tmpvar_14.x = tmpvar_13.x;\n  tmpvar_14.y = -(tmpvar_13.y);\n  uv_1 = ((tmpvar_14 / (\n    (tmpvar_13.x * tmpvar_13.x)\n   + \n    (tmpvar_13.y * tmpvar_13.y)\n  )) * 16.0);\n  vec2 tmpvar_15;\n  tmpvar_15 = mix ((0.5 + (tmpvar_2 * \n    (2.0 + ((bass_att - treb_att) * 0.02))\n  )), (uv_1 + 0.5), vec2(0.5, 0.5));\n  float tmpvar_16;\n  vec2 x_17;\n  x_17 = (tmpvar_15 - 0.5);\n  tmpvar_16 = sqrt(dot (x_17, x_17));\n  uv_1 = (0.5 + ((1.0 - \n    abs(((fract(\n      (tmpvar_15 * 0.5)\n    ) * 2.0) - 1.0))\n  ) - 0.5));\n  vec4 tmpvar_18;\n  tmpvar_18 = texture (sampler_fc_main, uv_1);\n  vec4 tmpvar_19;\n  tmpvar_19.w = 0.0;\n  tmpvar_19.xyz = (1.1 - tmpvar_18.xyz);\n  vec4 tmpvar_20;\n  tmpvar_20.w = 0.0;\n  tmpvar_20.xyz = ((-(tmpvar_18.xyz) * 1.1) + 1.5);\n  vec4 tmpvar_21;\n  tmpvar_21.w = 1.0;\n  tmpvar_21.xyz = (mix (tmpvar_19, clamp (\n    (texture (sampler_sunrise, uv_1) - 0.1)\n  , 0.0, 1.0), tmpvar_20) * clamp ((1.0 - \n    ((tmpvar_16 * tmpvar_16) * (tmpvar_16 * 0.001337))\n  ), 0.0, 1.0)).xyz;\n  ret = tmpvar_21.xyz;\n }"}