[preset00]
fRating=1
fGammaAdj=1.7
fDecay=0.98
fVideoEchoZoom=2
fVideoEchoAlpha=0
nVideoEchoOrientation=0
nWaveMode=0
bAdditiveWaves=0
bWaveDots=0
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=0
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=1.078276
fWaveScale=0.274297
fWaveSmoothing=0.75
fWaveParam=-0.48
fModWaveAlphaStart=0.75
fModWaveAlphaEnd=0.95
fWarpAnimSpeed=1
fWarpScale=1
fZoomExponent=1
fShader=0
zoom=1
rot=0
cx=0.5
cy=0.5
dx=0
dy=0
warp=1
sx=1
sy=1
wave_r=0.5
wave_g=0.5
wave_b=0.5
wave_x=0.5
wave_y=0.5
ob_size=0.005
ob_r=0
ob_g=0
ob_b=0
ob_a=1
ib_size=0.01
ib_r=0.25
ib_g=0.25
ib_b=0.25
ib_a=0
nMotionVectorsX=64
nMotionVectorsY=48
mv_dx=0
mv_dy=0
mv_l=0
mv_r=1
mv_g=1
mv_b=1
mv_a=0
per_frame_1=warp = 0;
per_frame_2=wave_x = locx;
per_frame_3=wave_y = if(below(locy,.01),.01,locy);
per_frame_4=wave_r = if(equal(expt2,0),.6,1);
per_frame_5=wave_g = .6;
per_frame_6=wave_b = if(equal(expt2,0),.6,.05);
per_frame_7=wave_mode = if(equal(expt2,0),2,0);
per_frame_8=locx=locx-xspeed;
per_frame_9=locy=if(below(locy,.02),.01,locy-yspeed);
per_frame_10=xspeed = if(below(locy,.01),0,xspeed - (xspeed)*.03);
per_frame_11=yspeed = if(below(locy,.01),0,yspeed+(yspeed)*.03);
per_frame_12=decay = if(below(locy,.02),.94,.4);
per_frame_13=expt = if(below(locy,.011),if(below(expt,0.001),0,expt-.01),expt);
per_frame_14=expt2 = if(equal(expt,0),if(below(expt2,0.001),0,expt2-.01),expt2);
per_frame_15=q1 = locx;
per_frame_16=q2 = locy;
per_frame_17=q3 = expt;
per_frame_18=q4 = expt2;
per_frame_19=monitor = timer;
per_frame_20=timer = if(above(timer,.01),timer-.01,6);
per_frame_21=yspeed = if(below(timer,.012),.02,yspeed);
per_frame_22=xspeed = if(below(timer,.012),rand(200)*.0001,xspeed);
per_frame_23=locy = if(below(timer,.012),1,locy);
per_frame_24=locx = if(below(timer,.012),(rand(80)+20)*.01,locx);
per_frame_25=expt = if(below(timer,.012),.5,expt);
per_frame_26=expt2 = if(below(timer,.012),1,expt2);
per_pixel_1=randomn = rand(100)*.006;
per_pixel_2=xcenter = q1;
per_pixel_3=ycenter = abs(q2-1);
per_pixel_4=dx = if(below(q2,.011),if(equal(q3,0),if(equal(q4,0),dx + (x - xcenter)*.03,dx + (x - xcenter)*.1),dx + (x - xcenter)*randomn),0);
per_pixel_5=dy = if(below(q2,.011),if(equal(q3,0),if(equal(q4,0),dy + (y - ycenter)*.06*bass,dy + (y - ycenter)*.1),dy + (y - ycenter)*randomn),0);
per_frame_init_1=yspeed = .02;
per_frame_init_2=xspeed = rand(200)*.0001;
per_frame_init_3=locy = 1;
per_frame_init_4=locx = (rand(80)+20)*.01;
per_frame_init_5=expt = .5;
per_frame_init_6=expt2 = 1;
per_frame_init_7=timer = 6;
