[preset00]
fRating=2.000000
fGammaAdj=2.000000
fDecay=0.950000
fVideoEchoZoom=3.007504
fVideoEchoAlpha=0.000000
nVideoEchoOrientation=1
nWaveMode=0
bAdditiveWaves=0
bWaveDots=0
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=0
bTexWrap=0
bDarkenCenter=1
bRedBlueStereo=0
bBrighten=0
bDarken=1
bSolarize=0
bInvert=0
fWaveAlpha=100.000000
fWaveScale=0.880224
fWaveSmoothing=0.000000
fWaveParam=-0.986474
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=1.000000
fWarpScale=1.000000
fZoomExponent=1.074097
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.084198
wave_g=0.176891
wave_b=0.435862
wave_x=0.985303
wave_y=0.545416
ob_size=0.010000
ob_r=0.532617
ob_g=0.151336
ob_b=0.928420
ob_a=0.134949
ib_size=0.010000
ib_r=0.940831
ib_g=0.929317
ib_b=0.274101
ib_a=0.996525
nMotionVectorsX=12.000000
nMotionVectorsY=9.000000
mv_dx=-0.993034
mv_dy=0.179747
mv_l=0.055000
mv_r=0.339724
mv_g=0.182042
mv_b=0.355223
mv_a=0.672775
per_frame_1=warp = 0;
per_frame_2=wave_r = wave_r + .5*sin(time*333) + bass*.3;
per_frame_3=wave_g = wave_g + .5*sin(time*222) + treb*.3;
per_frame_4=wave_b = wave_b + .5*sin(time*111) + mid*.3;
per_frame_5=rot = .4*sin(mid_att*.05);
per_frame_6=wave_r = wave_r + 0.400*( 0.60*sin(0.933*time) + 0.40*sin(1.045*time) );
per_frame_7=wave_g = wave_g + 0.400*( 0.60*sin(0.900*time) + 0.40*sin(0.956*time) );
per_frame_8=wave_b = wave_b + 0.400*( 0.60*sin(0.910*time) + 0.40*sin(0.920*time) );
per_frame_9=// Appended Code From C:\Program Files\Winamp\Plugins\MilkDrop\Self\Turbulence.milk
per_frame_10=wave_y = if(below(wave_r - bass , mid * frame) , bass * bass , mid + time);
per_frame_11=wave_r = max(bass + wave_r , treb + wave_g);
per_frame_12=mv_l = 0.055 + wave_y * wave_x;
per_frame_13=wave_r = if(below(wave_r * wave_y , treb * treb) , bass * zoom , bass * warp);
per_frame_14=ob_r = min(mid * bass , treb + treb);
per_frame_15=ib_b = if(below(bass_att * wave_b , wave_g * wave_x) , if(below(warp * mid , bass - wave_y) , bass_att * wave_r , treb * wave_g) , wave_r + wave_g);
per_frame_16=mv_b = min(wave_r + bass , mid * wave_b);
per_frame_17=wave_r=if(below(wave_r,0.0), 0.0, wave_r);
per_frame_18=wave_r=if(above(wave_r,1.0), 1.0, wave_r);
per_frame_19=wave_y=if(below(wave_y,0.0), 0.0, wave_y);
per_frame_20=wave_y=if(above(wave_y,1.0), 1.0, wave_y);
per_frame_21=ob_r=if(below(ob_r,0.0), 0.0, ob_r);
per_frame_22=ob_r=if(above(ob_r,1.0), 1.0, ob_r);
per_frame_23=ib_b=if(below(ib_b,0.0), 0.0, ib_b);
per_frame_24=ib_b=if(above(ib_b,1.0), 1.0, ib_b);
per_frame_25=mv_b=if(below(mv_b,0.0), 0.0, mv_b);
per_frame_26=mv_b=if(above(mv_b,1.0), 1.0, mv_b);
per_frame_27=mv_l=if(below(mv_l,0.0), 0.0, mv_l);
per_frame_28=mv_l=if(above(mv_l,5.0), 5.0, mv_l);
per_frame_29=wave_r=if(below(wave_r,0.0), 0.0, wave_r);
per_frame_30=wave_r=if(above(wave_r,1.0), 1.0, wave_r);
per_frame_31=ob_r=if(below(ob_r,0.0), 0.0, ob_r);
per_frame_32=ob_r=if(above(ob_r,1.0), 1.0, ob_r);
per_frame_33=wave_y=if(below(wave_y,0.0), 0.0, wave_y);
per_frame_34=wave_y=if(above(wave_y,1.0), 1.0, wave_y);
per_frame_35=wave_r=if(below(wave_r,0.0), 0.0, wave_r);
per_frame_36=wave_r=if(above(wave_r,1.0), 1.0, wave_r);
per_frame_37=ob_r=if(below(ob_r,0.0), 0.0, ob_r);
per_frame_38=ob_r=if(above(ob_r,1.0), 1.0, ob_r);
per_frame_39=ib_b=if(below(ib_b,0.0), 0.0, ib_b);
per_frame_40=ib_b=if(above(ib_b,1.0), 1.0, ib_b);
per_frame_41=mv_b=if(below(mv_b,0.0), 0.0, mv_b);
per_frame_42=mv_b=if(above(mv_b,1.0), 1.0, mv_b);
per_frame_43=wave_y=if(below(wave_y,0.0), 0.0, wave_y);
per_frame_44=wave_y=if(above(wave_y,1.0), 1.0, wave_y);
per_pixel_1=ray = pow(rad,1.8)+.05;
per_pixel_2=zoom = (ray/rad)*1.4 + .3*sin(ang*(bass*5))+(bass*.2);
per_pixel_3=rot=0;
per_pixel_4=dx = ((x-.5)+(y-.5)*.25*sin(time/10))*(2+.1*treb_att);
per_pixel_5=dy=(y-.5)*(2-.1*treb_att);
per_pixel_6=zoom =1;
per_pixel_7=;
per_pixel_8=cy = 0.5 + -1.72704607*sin(1.58401787*sin(y * time));
per_pixel_9=sy = 1 + if(equal(ang + q1 , ang * bass_att) , warp - x , bass_att * sx);
per_pixel_10=cy=if(below(cy,-1.0), -1.0, cy);
per_pixel_11=cy=if(above(cy,2.0), 2.0, cy);
per_pixel_12=sy=if(below(sy,0.01), 0.01, sy);
per_pixel_13=sy=if(above(sy,100.0), 100.0, sy);
