[preset00]
fRating=4.000000
fGammaAdj=1.000000
fDecay=0.983000
fVideoEchoZoom=0.998169
fVideoEchoAlpha=0.500000
nVideoEchoOrientation=3
nWaveMode=4
bAdditiveWaves=0
bWaveDots=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=1
bDarkenCenter=0
bMotionVectorsOn=0
bRedBlueStereo=0
nMotionVectorsX=12
nMotionVectorsY=9
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=7.740000
fWaveScale=0.372036
fWaveSmoothing=0.387000
fWaveParam=-0.360000
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=1.334503
fWarpScale=1.327831
fZoomExponent=1.026514
fShader=1.000000
zoom=1.374512
rot=0.020000
cx=0.170000
cy=0.830001
dx=0.000000
dy=0.000000
warp=1.779457
sx=0.990099
sy=1.000000
wave_r=0.270000
wave_g=0.270000
wave_b=0.270000
wave_x=0.500000
wave_y=0.500000
ob_size=0.005000
ob_r=0.360000
ob_g=0.360000
ob_b=0.360000
ob_a=0.580000
ib_size=0.010000
ib_r=0.450000
ib_g=0.450001
ib_b=0.449900
ib_a=0.530000
per_frame_1=warp=0;
per_frame_2=old_bass_flop=bass_flop;
per_frame_3=old_treb_flop=treb_flop;
per_frame_4=old_mid_flop=mid_flop;
per_frame_5=chaos=.9+.1*sin(pulse);
per_frame_6=entropy=if(bnot(entropy),2,if(equal(pulse,-20),1+rand(3),entropy));
per_frame_7=bass_thresh = above(bass_att,bass_thresh)*2 + (1-above(bass_att,bass_thresh))*((bass_thresh-1.3)*chaos+1.3);
per_frame_8=bass_flop=abs(bass_flop-equal(bass_thresh,2));
per_frame_9=treb_thresh=above(treb_att,treb_thresh)*2 + (1-above(treb_att,treb_thresh))*((treb_thresh-1.3)*chaos+1.3);
per_frame_10=treb_flop=abs(treb_flop-equal(treb_thresh,2));
per_frame_11=mid_thresh=above(mid_att,mid_thresh)*2 + (1-above(mid_att,mid_thresh))*((mid_thresh-1.3)*chaos+1.3);
per_frame_12=mid_flop=abs(mid_flop-equal(mid_thresh,2));
per_frame_13=bass_changed=bnot(equal(old_bass_flop,bass_flop));
per_frame_14=mid_changed=bnot(equal(old_mid_flop,mid_flop));
per_frame_15=treb_changed=bnot(equal(old_treb_flop,treb_flop));
per_frame_16=bass_residual = bass_changed*sin(pulse*bass_thresh*.1*entropy) + bnot(bass_changed)*bass_residual;
per_frame_17=treb_residual = treb_changed*sin(pulse*treb_thresh*.1*entropy) + bnot(treb_changed)*treb_residual;
per_frame_18=mid_residual = mid_changed*sin(pulse*mid_thresh*.1*entropy) + bnot(mid_changed)*mid_residual;
per_frame_19=pulse=if(above(abs(pulse),20),-20,pulse+.2*bor(bor(bass_changed*bnot(treb_changed),treb_changed*bnot(bass_changed))*bnot(mid_changed),mid_changed)+(mid+bass+treb)*entropy*.025);
per_frame_20=q1=mid_residual;
per_frame_21=q2=bass_residual;
per_frame_22=q3=treb_residual;
per_frame_23=q4=sin(pulse);
per_frame_24=q5=sin(pulse/2);
per_frame_25=wave_r=wave_r+.5*bass_residual;
per_frame_26=wave_r=wave_g+.5*mid_residual;
per_frame_27=wave_r=wave_b+.5*treb_residual;
per_frame_28=wave_mystery=mid_residual;
per_frame_29=ob_r=if(bass_flop,treb_flop,wave_r);
per_frame_30=ob_b=if(treb_flop,mid_flop,wave_b);
per_frame_31=ob_g=if(mid_flop,bass_flop,wave_g);
per_frame_32=ob_a=.03+.02*wave_r;
per_frame_33=ob_size=.05+.04*treb_residual;
per_frame_34=ib_r=if(bass_flop,ob_b,ob_g);
per_frame_35=ib_b=if(treb_flop,ob_g,ob_r);
per_frame_36=ib_g=if(mid_flop,ob_r,ob_b);
per_frame_37=ib_a=.03+.02*wave_g;
per_frame_38=ib_size=.05+.04*bass_residual;
per_frame_39=ib_r = ib_r + 0.2*sin(time*0.5413);
per_frame_40=ib_g = ib_g + 0.2*sin(time*0.6459);
per_frame_41=ib_b = ib_b + 0.2*sin(time*0.4354);
per_frame_42=rot = rot + 0.040*( 0.60*sin(0.381*time) + 0.40*sin(0.579*time) );
per_frame_43=zoom=max(0.98, min(0.15+0.8*bass_att, 1.75 ));
per_pixel_1=radix=if(above(q3,0),min(x,y),max(x,y));
per_pixel_2=radix=if(above(q2,0),min(radix,rad),max(radix,rad));
per_pixel_3=rot=if(above(q4,0),rad*.2*q5,0);
per_pixel_4=zoom=if(above(q2,0),zoom,if(above(q3,0),1+q1*.05,1+.07*cos(radix*10*q1)));
