[preset00]
fRating=2.000000
fGammaAdj=2.000000
fDecay=1.000000
fVideoEchoZoom=1.000000
fVideoEchoAlpha=0.000000
nVideoEchoOrientation=0
nWaveMode=5
bAdditiveWaves=0
bWaveDots=0
bWaveThick=1
bModWaveAlphaByVolume=0
bMaximizeWaveColor=0
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=1.000000
fWaveScale=0.550326
fWaveSmoothing=0.000000
fWaveParam=0.716487
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=1.000000
fWarpScale=1.000000
fZoomExponent=1.000000
fShader=1.000000
zoom=1.000000
rot=0.000000
cx=0.500000
cy=0.500000
dx=0.000000
dy=0.000000
warp=1.000000
sx=1.000000
sy=1.000000
wave_r=0.901354
wave_g=0.377889
wave_b=0.000471
wave_x=0.413669
wave_y=0.018739
ob_size=0.010000
ob_r=0.819144
ob_g=0.689338
ob_b=0.246663
ob_a=0.008466
ib_size=0.005000
ib_r=0.585938
ib_g=0.006329
ib_b=0.631080
ib_a=0.286550
nMotionVectorsX=12.000000
nMotionVectorsY=9.000000
mv_dx=0.369793
mv_dy=-0.432902
mv_l=0.900000
mv_r=0.240271
mv_g=0.431694
mv_b=0.877384
mv_a=0.000000
per_frame_1=warp=0;
per_frame_2=drip1grav = if(above(drip1y,1.2),0.001*(1+rand(10)),drip1grav) + equal(drip1grav,0)*0.05;
per_frame_3=drip1x = if(above(drip1y,1.2),0.01*rand(100),drip1x);
per_frame_4=drip1y = if(above(drip1y,1.2),0,drip1y);
per_frame_5=drip2grav = if(above(drip2y,1.2),0.001*(1+rand(10)),drip2grav) + equal(drip2grav,0)*0.06;
per_frame_6=drip2x = if(above(drip2y,1.2),0.01*rand(100),drip2x);
per_frame_7=drip2y = if(above(drip2y,1.2),0,drip2y);
per_frame_8=drip3grav = if(above(drip3y,1.2),0.001*(1+rand(10)),drip3grav) + equal(drip3grav,0)*0.07;
per_frame_9=drip3x = if(above(drip3y,1.2),0.01*rand(100),drip3x);
per_frame_10=drip3y = if(above(drip3y,1.2),0,drip3y);
per_frame_11=drip4grav = if(above(drip4y,1.2),0.001*(1+rand(10)),drip4grav) + equal(drip4grav,0)*0.08;
per_frame_12=drip4x = if(above(drip4y,1.2),0.01*rand(100),drip4x);
per_frame_13=drip4y = if(above(drip4y,1.2),0,drip4y);
per_frame_14=drip1y = 0.001 + drip1y + drip1grav;
per_frame_15=drip2y = 0.001 + drip2y + drip2grav;
per_frame_16=drip3y = 0.001 + drip3y + drip3grav;
per_frame_17=drip4y = 0.001 + drip4y + drip4grav;
per_frame_18=q1 = if(equal(frame%4,0),drip1x,if(equal(frame%4,1),drip2x,if(equal(frame%4,2),drip3x,drip4x)));
per_frame_19=q2 = if(equal(frame%4,0),drip1y,if(equal(frame%4,1),drip2y,if(equal(frame%4,2),drip3y,drip4y)));
per_frame_20=wave_r = wave_r + 0.350*( 0.60*sin(0.980*time) + 0.40*sin(1.047*time) );
per_frame_21=wave_g = wave_g + 0.350*( 0.60*sin(0.835*time) + 0.40*sin(1.081*time) );
per_frame_22=wave_b = wave_b + 0.350*( 0.60*sin(0.814*time) + 0.40*sin(1.011*time) );
per_frame_23=vol = (bass+mid+att)/6;
per_frame_24=xamptarg = if(equal(frame%15,0),min(0.5*vol*bass_att,0.5),xamptarg);
per_frame_25=xamp = xamp + 0.5*(xamptarg-xamp);
per_frame_26=xdir = if(above(abs(xpos),xamp),-sign(xpos),if(below(abs(xspeed),0.1),2*above(xpos,0)-1,xdir));
per_frame_27=xspeed = xspeed + xdir*xamp - xpos - xspeed*0.055*below(abs(xpos),xamp);
per_frame_28=xpos = xpos + 0.001*xspeed;
per_frame_29=wave_x = xpos + 0.5;
per_frame_30=yamptarg = if(equal(frame%15,0),min(0.3*vol*treb_att,0.5),yamptarg);
per_frame_31=yamp = yamp + 0.5*(yamptarg-yamp);
per_frame_32=ydir = if(above(abs(ypos),yamp),-sign(ypos),if(below(abs(yspeed),0.1),2*above(ypos,0)-1,ydir));
per_frame_33=yspeed = yspeed + ydir*yamp - ypos - yspeed*0.055*below(abs(ypos),yamp);
per_frame_34=ypos = ypos + 0.001*yspeed;
per_frame_35=wave_y = ypos + 0.5;
per_frame_36=rot = rot + 0.01*( 0.60*sin(0.381*time) + 0.40*sin(0.479*time) );
per_frame_37=cx = cx + 0.410*( 0.60*sin(0.374*time) + 0.40*sin(0.294*time) );
per_frame_38=cy = cy + 0.410*( 0.60*sin(0.393*time) + 0.40*sin(0.223*time) );
per_frame_39=wave_mystery = wave_mystery + 0.15*( 0.60*sin(0.629*time) + 0.40*sin(1.826*time) );
per_frame_40=warp = warp*vol;
per_frame_41=dy = dy + above(bass_att,1.2)*bass_att*0.003;
per_frame_42=ob_a = ob_a - 2*vol;
per_frame_43=rot=if(below(rot,-1.0), -1.0, rot);
per_frame_44=rot=if(above(rot,1.0), 1.0, rot);
per_frame_45=warp=if(below(warp,0.01), 0.01, warp);
per_frame_46=warp=if(above(warp,100.0), 100.0, warp);
per_frame_47=cx=if(below(cx,-1.0), -1.0, cx);
per_frame_48=cx=if(above(cx,2.0), 2.0, cx);
per_frame_49=cy=if(below(cy,-1.0), -1.0, cy);
per_frame_50=cy=if(above(cy,2.0), 2.0, cy);
per_frame_51=dy=if(below(dy,-1), -1, dy);
per_frame_52=dy=if(above(dy,1.0), 1.0, dy);
per_frame_53=wave_x=if(below(wave_x,0.0), 0.0, wave_x);
per_frame_54=wave_x=if(above(wave_x,1.0), 1.0, wave_x);
per_frame_55=wave_y=if(below(wave_y,0.0), 0.0, wave_y);
per_frame_56=wave_y=if(above(wave_y,1.0), 1.0, wave_y);
per_frame_57=wave_mystery=if(below(wave_mystery,-1.0), -1.0, wave_mystery);
per_frame_58=wave_mystery=if(above(wave_mystery,1.0), 1.0, wave_mystery);
per_frame_59=ob_a=if(below(ob_a,0.0), 0.0, ob_a);
per_frame_60=ob_a=if(above(ob_a,1.0), 1.0, ob_a);
per_pixel_1=dy = dy + if(below(abs(q1-x),0.01),if(below(y,q2),max(0.02-abs(q1-x),0),0.001),0.001);
per_pixel_2=cx = 8.13988973*sqr(warp - x);
per_pixel_3=cx=if(below(cx,-1.0), -1.0, cx);
per_pixel_4=cx=if(above(cx,2.0), 2.0, cx);
per_pixel_5=dy=if(below(dy,-1), -1, dy);
per_pixel_6=dy=if(above(dy,1.0), 1.0, dy);
