[preset00]
fRating=3.000000
fGammaAdj=1.000000
fDecay=0.978999
fVideoEchoZoom=2.786752
fVideoEchoAlpha=0.700000
nVideoEchoOrientation=0
nWaveMode=0
bAdditiveWaves=0
bWaveDots=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=0
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=0.001000
fWaveScale=1.008144
fWaveSmoothing=0.000000
fWaveParam=0.000000
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=1.000000
fWarpScale=1.000000
fZoomExponent=1.000000
fShader=0.000000
zoom=1.040603
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.000000
wave_g=0.000000
wave_b=0.000000
wave_x=0.950000
wave_y=0.500000
ob_size=0.000000
ob_r=0.000000
ob_g=0.000000
ob_b=0.000000
ob_a=0.000000
ib_size=0.000000
ib_r=0.000000
ib_g=0.000000
ib_b=0.000000
ib_a=0.000000
nMotionVectorsX=12.000000
nMotionVectorsY=9.000000
mv_l=0.900000
mv_r=1.000000
mv_g=1.000000
mv_b=1.000000
mv_a=0.000000
per_frame_1=warp=0;
per_frame_2=dx=-0.0005;
per_frame_3=dy=-0.0005;
per_frame_4=old_bass_flop=bass_flop;
per_frame_5=old_treb_flop=treb_flop;
per_frame_6=old_mid_flop=mid_flop;
per_frame_7=chaos=.9+.1*sin(beat);
per_frame_8=entropy=if(bnot(entropy),2,if(equal(pulse,-3.14),1+rand(3),entropy));
per_frame_9=bass_thresh = above(bass_att,bass_thresh)*2 + (1-above(bass_att,bass_thresh))*((bass_thresh-1.3)*chaos+1.3);
per_frame_10=bass_flop=abs(bass_flop-equal(bass_thresh,2));
per_frame_11=treb_thresh=above(treb_att,treb_thresh)*2 + (1-above(treb_att,treb_thresh))*((treb_thresh-1.3)*chaos+1.3);
per_frame_12=treb_flop=abs(treb_flop-equal(treb_thresh,2));
per_frame_13=mid_thresh=above(mid_att,mid_thresh)*2 + (1-above(mid_att,mid_thresh))*((mid_thresh-1.3)*chaos+1.3);
per_frame_14=mid_flop=abs(mid_flop-equal(mid_thresh,2));
per_frame_15=bass_changed=bnot(equal(old_bass_flop,bass_flop));
per_frame_16=mid_changed=bnot(equal(old_mid_flop,mid_flop));
per_frame_17=treb_changed=bnot(equal(old_treb_flop,treb_flop));
per_frame_18=bass_residual = bass_changed*sin(pulse*.1*entropy) + bnot(bass_changed)*bass_residual;
per_frame_19=treb_residual = treb_changed*sin(pulse*.1*entropy) + bnot(treb_changed)*treb_residual;
per_frame_20=mid_residual = mid_changed*sin(pulse*.1*entropy) + bnot(mid_changed)*mid_residual;
per_frame_21=pulse=if(above(abs(pulse),3.14),-3.14,pulse+(bass_thresh+mid_thresh+treb_thresh)*.052);
per_frame_22=beat=if(above(abs(beat),3.14),-3.14,beat+(bass+treb+mid)*.01);
per_frame_23=q1=mid_residual;
per_frame_24=q2=bass_residual;
per_frame_25=q3=treb_residual;
per_frame_26=q4=sin(pulse);
per_frame_27=q5=sin(beat);
per_frame_28=mv_r=mv_r+.5*bass_residual;
per_frame_29=mv_g=mv_g+.5*mid_residual;
per_frame_30=mv_b=mv_b+.5*treb_residual;
per_frame_31=mv_a=1-(ob_a+ib_a)*chaos*.5;
per_frame_32=mv_x=abs(beat*10)*entropy;
per_frame_33=mv_y=abs(pulse*10)*entropy;
per_pixel_1=bend = cos(   x*3.14*q2*above(q1,q2) + (rad*3.14*q2-3.14*q3)*above(q2,q3)+(y*3.14*q4)*above(q3,q1));
per_pixel_2=zoom = zoom+bend*.05*above(q4+q5,.8);
per_pixel_3=something=if(above(q5,0),shift,q3*0.2*cos((rad+q1)*3.14+q2));
per_pixel_4=rot=if(above(zoom-1,.03*q1),if(above(q4,0),rad*.2*q5,something),(x*2-1)*q5);
per_pixel_5=grid=x*100%(above(q1,q4)+above(q2,q5)+above(q3,q4)) + y*100%(above(q1,q5)+above(q2,q4)+above(q3,q5));
per_pixel_6=zoom=if(grid,zoom-.17*cos(rad*3.14+x*q1*3.14+y*q2*3.14)*(q5+q4),zoom);
per_pixel_7=g1=sin(q2*.04*q5);
per_pixel_8=g2=sin(q2*.05*q5);
per_pixel_9=g3=sin(q2*.06*q5);
per_pixel_10=x_shift=pow(x,2)+x*g1*2+sqr(g1);
per_pixel_11=y_shift=pow(y,2)+y*g2*2+sqr(g2);
per_pixel_12=r_shift=pow(rad,2)+rad*g3*2+sqr(g3);
per_pixel_13=zoom=zoom-sin(x_shift*y_shift*r_shift*3.14)*(y*2-1);
per_pixel_14=cx=cx+.1*sin(time*.8);
per_pixel_15=cy=cy+.1*sin(time*.7);
