[preset00]
fRating=2
fGammaAdj=1
fDecay=1
fVideoEchoZoom=0.999609
fVideoEchoAlpha=0
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.27
fWaveParam=0
fModWaveAlphaStart=0.75
fModWaveAlphaEnd=0.95
fWarpAnimSpeed=5.99579
fWarpScale=1.331
fZoomExponent=1.01
fShader=0
zoom=0.998531
rot=0.002
cx=0.5
cy=0.5
dx=0
dy=0
warp=0.01
sx=1
sy=1
wave_r=0.5
wave_g=0.5
wave_b=0.5
wave_x=0.1
wave_y=0.86
ob_size=0.01
ob_r=0
ob_g=0.9
ob_b=0.2
ob_a=1
ib_size=0
ib_r=0.5
ib_g=0.5
ib_b=0.5
ib_a=1
nMotionVectorsX=0
nMotionVectorsY=48
mv_l=5
mv_r=1
mv_g=1
mv_b=1
mv_a=0
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);
