[preset00]
fRating=3.000000
fGammaAdj=1.000000
fDecay=1.000000
fVideoEchoZoom=0.999609
fVideoEchoAlpha=0.000000
nVideoEchoOrientation=0
nWaveMode=5
bAdditiveWaves=0
bWaveDots=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=5.204482
fWaveScale=1.284528
fWaveSmoothing=0.270000
fWaveParam=0.000000
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=5.995790
fWarpScale=1.331000
fZoomExponent=1.010000
fShader=0.000000
zoom=0.998531
rot=0.002000
cx=0.500000
cy=0.500000
dx=0.000000
dy=0.000000
warp=0.010000
sx=1.000000
sy=1.000000
wave_r=0.500000
wave_g=0.500000
wave_b=0.500000
wave_x=0.100000
wave_y=0.860000
ob_size=0.010000
ob_r=0.000000
ob_g=0.900000
ob_b=0.200000
ob_a=1.000000
ib_size=0.000000
ib_r=0.500000
ib_g=0.500000
ib_b=0.500000
ib_a=1.000000
nMotionVectorsX=0.000000
nMotionVectorsY=48.000000
mv_l=5.000000
mv_r=1.000000
mv_g=1.000000
mv_b=1.000000
mv_a=0.000000
per_frame_1=ob_r = 0.3 - 0.3*(0.5*sin(time*0.701)+ 0.3*cos(time*0.438));
per_frame_2=ob_g = 0.4- 0.4*sin(time*5.924);
per_frame_3=ob_b = 0.35 - 0.3*cos(time*0.816);
per_frame_4=cx = cx - 0.1*sin(time*0.342);
per_frame_5=cy = cy + 0.1*sin(time*0.453);
per_frame_6=warp =0;
per_frame_7=volume = 0.15*(bass_att+bass+mid+mid_att);
per_frame_8=beatrate = if(equal(beatrate,0),1,if(below(volume,0.01),1,beatrate));
per_frame_9=lastbeat = if(equal(lastbeat,0),time,lastbeat);
per_frame_10=meanbass_att = 0.1*(meanbass_att*9 + bass_att);
per_frame_11=peakbass_att = if(above(bass_att,peakbass_att),bass_att,peakbass_att);
per_frame_12=beat = if(above(volume,0.8),if(below(peakbass_att - bass_att, 0.05*peakbass_att),if(above(time - lastbeat,0.1+0.5*(beatrate-0.1)),1,0),0),0);
per_frame_13=beatrate = max(if(beat,if(below(time-lastbeat,2*beatrate),0.1*(beatrate*9 + time - lastbeat),beatrate),beatrate),0.1);
per_frame_14=peakbass_att = if(equal(beat,0),if(above(time - lastbeat,2*beatrate),peakbass_att*0.95,peakbass_att*0.995),bass_att);
per_frame_15=lastbeat = if(beat,time,lastbeat);
per_frame_16=peakbass_att = max(if(beat,bass_att,peakbass_att),1.1*meanbass_att);
per_frame_17=q5 = if(beat,0.1*rand(1000),oldq5);
per_frame_18=oldq5 = q5;
per_frame_19=q3 = if(beat,0.1*rand(1000),oldq3);
per_frame_20=oldq3 = q3;
per_frame_21=my_ib_size = 0.02;
per_frame_22=ib_size = if(beat,my_ib_size,old_ib_size);
per_frame_23=old_ib_size = ib_size;
per_frame_24=ib_r = ib_r + 0.5*sin(time*3.034);
per_frame_25=ib_g = ib_g + 0.5*sin(time*2.547);
per_frame_26=ib_b = ib_b - 0.5*sin(time*1.431);
per_frame_27=xdx = dx -0.008*sin(time*0.23);
per_frame_28=xdy = dy - 0.008*sin(time*0.2);
per_frame_29=wave_r = wave_r + 0.5*sin(time*0.734);
per_frame_30=wave_b = wave_b + 0.5*sin(time*0.615);
per_frame_31=wave_b = wave_b + 0.5*sin(time*0.714);
per_frame_32=xamptarg = if(equal(frame%15,0),min(0.5*volume*bass_att,0.5),xamptarg);
per_frame_33=xamp = xamp + 0.5*(xamptarg-xamp);
per_frame_34=xdir = if(above(abs(xpos),xamp),-sign(xpos),if(below(abs(xspeed),0.1),2*above(xpos,0)-1,xdir));
per_frame_35=xaccel = xdir*xamp - xpos - xspeed*0.055*below(abs(xpos),xamp);
per_frame_36=xspeed = xspeed + xdir*xamp - xpos - xspeed*0.055*below(abs(xpos),xamp);
per_frame_37=xpos = xpos + 0.001*xspeed;
per_frame_38=dx = 0.1*xpos;
per_frame_39=q2 = xpos;
per_frame_40=yamptarg = if(equal(frame%15,0),min(0.3*volume*treb_att,0.5),yamptarg);
per_frame_41=yamp = yamp + 0.5*(yamptarg-yamp);
per_frame_42=ydir = if(above(abs(ypos),yamp),-sign(ypos),if(below(abs(yspeed),0.1),2*above(ypos,0)-1,ydir));
per_frame_43=yaccel = ydir*yamp - ypos - yspeed*0.055*below(abs(ypos),yamp);
per_frame_44=yspeed = yspeed + ydir*yamp - ypos - yspeed*0.055*below(abs(ypos),yamp);
per_frame_45=ypos = ypos + 0.001*yspeed;
per_frame_46=dy =0.1*ypos;
per_frame_47=q4 = ypos;
per_pixel_1=box=0.8*(1-rad)+0.5*abs(x*3-0.2*sin(q3))%2 + 0.5*abs(y*3+0.2*sin(q5))%2;
per_pixel_2=q1 = 8.05+1.2*(sin(x)-cos(y));
per_pixel_3=zoom = if(above(box,1),q1*0.1,zoom);
per_pixel_4=rot = if(above(box,1),3.5+ abs(sin(3*(q2+q4)))*(0.3*sin(0.385*time)+0.4*sin(time*0.254)+0.3*cos(time*0.311)),rot);
per_pixel_5=dx = if(above(box,1),q4,dx);
per_pixel_6=dy= if(above(box,1),q2,dy);
