[preset00]
fRating=5.000000
fGammaAdj=1.700001
fDecay=0.995000
fVideoEchoZoom=1.001825
fVideoEchoAlpha=0.000000
nVideoEchoOrientation=0
nWaveMode=0
bAdditiveWaves=1
bWaveDots=0
bWaveThick=1
bModWaveAlphaByVolume=0
bMaximizeWaveColor=0
bTexWrap=0
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=1
bSolarize=0
bInvert=0
fWaveAlpha=1.007944
fWaveScale=0.010000
fWaveSmoothing=0.900000
fWaveParam=-0.540000
fModWaveAlphaStart=0.710000
fModWaveAlphaEnd=1.300000
fWarpAnimSpeed=1.000000
fWarpScale=1.331000
fZoomExponent=0.620260
fShader=1.000000
zoom=1.001839
rot=0.000000
cx=0.500000
cy=0.500000
dx=0.000000
dy=0.000000
warp=0.010000
sx=1.000000
sy=1.000000
wave_r=1.000000
wave_g=1.000000
wave_b=1.000000
wave_x=0.500000
wave_y=0.500000
ob_size=0.000000
ob_r=0.000000
ob_g=0.000000
ob_b=0.000000
ob_a=1.000000
ib_size=0.000000
ib_r=0.250000
ib_g=0.250000
ib_b=0.250000
ib_a=0.000000
nMotionVectorsX=64.000000
nMotionVectorsY=48.000000
mv_dx=0.000000
mv_dy=0.000000
mv_l=5.000000
mv_r=1.000000
mv_g=1.000000
mv_b=1.000000
mv_a=0.000000
per_frame_1=zoom = 1.001;  warp =0.075; decay = 0.993; vol = 0.3*(bass+mid+treb);
per_frame_2=b1x = if( equal( b1x, 0 ), .25+rand(50)/100, b1x );
per_frame_3=b1y = if( equal( b1y, 0 ), .25+rand(50)/100, b1y );
per_frame_4=b1vx = if( equal( b1vx, 0 ), 0.008*(-.5+rand(100)/100), b1vx );
per_frame_5=b1vy = if( equal( b1vy, 0 ), 0.008*(-.5+rand(100)/100), b1vy );
per_frame_6=b2x = if( equal( b2x, 0 ), .25+rand(50)/100, b2x );
per_frame_7=b2y = if( equal( b2y, 0 ), .25+rand(50)/100, b2y );
per_frame_8=b2vx = if( equal( b2vx, 0 ), 0.008*(-.5+rand(100)/100), b2vx );
per_frame_9=b2vy = if( equal( b2vy, 0 ), 0.008*(-.5+rand(100)/100), b2vy );
per_frame_10=
per_frame_11=// o Resolve forces
per_frame_12=distX = ( b1x -b2x ); distY = ( b1y - b2y ); fAngle = atan2( distY, distX );
per_frame_13=dist = sqrt(sqr(distX)+sqr(distY));
per_frame_14=k = 1/sqr(dist);
per_frame_15=k = if( above( k, .01) , 0.01, k );
per_frame_16=k = if(above(fCrashPhase,0),0,k);
per_frame_17=b1vx=b1vx+k*cos(fAngle-3.14)/FPS;
per_frame_18=b1vy=b1vy+k*sin(fAngle-3.14)/FPS;
per_frame_19=b2vx=b2vx+k*cos(fAngle)/FPS;
per_frame_20=b2vy=b2vy+k*sin(fAngle)/FPS;
per_frame_21=Blue=if( above(sqrt(sqr(b2vx)+sqr(b2vy) ) , sqrt( sqr(b1vx)+sqr(b1vy) )), 1, 0);
per_frame_22=
per_frame_23=// o Apply motion
per_frame_24=iIndex = (frame%4);fScale = if( above(iIndex,1),(1+.3*bass)*30/FPS,(1+.3*mid)*30/FPS);
per_frame_25=b1x = b1x + b1vx*fScale;      b1y = b1y + b1vy*fScale;
per_frame_26=b2x = b2x + b2vx*fScale;      b2y = b2y + b2vy*fScale;
per_frame_27=
per_frame_28=// o Collision and "keep-in-screen" check
per_frame_29=b1vx = if( above( b1x, 1 ), -b1vx, b1vx );
per_frame_30=b1vx = if( below( b1x, 0 ), -b1vx, b1vx );
per_frame_31=b1vy = if( above( b1y, 1 ), -b1vy, b1vy );
per_frame_32=b1vy = if( below( b1y, 0 ), -b1vy, b1vy );
per_frame_33=b2vx = if( above( b2x, 1 ), -b2vx, b2vx );
per_frame_34=b2vx = if( below( b2x, 0 ), -b2vx, b2vx );
per_frame_35=b2vy = if( above( b2y, 1 ), -b2vy, b2vy );
per_frame_36=b2vy = if( below( b2y, 0 ), -b2vy, b2vy );
per_frame_37=bCrash = if( below(dist, 0.075), 1, 0);bCrash = if( above( frame, NoCheckUntil) ,bCrash, 0 );
per_frame_38=ob_size = bCrash;ob_a=bCrash*.4;
per_frame_39=kavb1vx = b1vx;     kavb1vy = b1vy;
per_frame_40=kavb2vx = b2vx;     kavb2vy = b2vy;
per_frame_41=DotProd1 = cos(fAngle-3.14)*kavb2vx + sin(fAngle-3.14)*kavb2vy;
per_frame_42=DotProd2 = cos(fAngle)*kavb1vx + sin(fAngle)*kavb1vy;
per_frame_43=b1vx=if( equal( bCrash,1), -cos(fAngle-3.14)*DotProd1 + kavb2vx, b1vx );
per_frame_44=b1vy=if( equal( bCrash,1), -cos(fAngle-3.14)*DotProd1 + kavb2vy, b1vy );
per_frame_45=b2vx=if( equal( bCrash,1), -cos(fAngle)*DotProd2 + kavb1vx, b2vx );
per_frame_46=b2vy=if( equal( bCrash,1), -sin(fAngle)*DotProd2 + kavb1vy, b2vy );
per_frame_47=NoCheckUntil = if(equal(bCrash,1),frame + 30,NoCheckUntil );
per_frame_48=NoCheckUntil = if( equal( frame-2,NoCheckUntil+60 ), 0, NoCheckUntil );
per_frame_49=
per_frame_50=// o Determine what to draw
per_frame_51=fCrashPhase = if( above(NoCheckUntil,0),(60 + NoCheckUntil - frame)/90, 0);
per_frame_52=decay = if( above( fCrashPhase,0), .993 + fCrashPhase*0.006,decay);
per_frame_53=wave_x = if( below( iIndex,2), b1x, wave_x);
per_frame_54=wave_y = if( below( iIndex,2), b1y, wave_y);
per_frame_55=wave_x = if( above( iIndex,1), b2x, wave_x);
per_frame_56=wave_y = if( above( iIndex,1), b2y, wave_y);
per_frame_57=wave_r = 1.0; wave_g = 1.0; wave_b = 1.0;
per_frame_58=wave_r = if( equal( iIndex,1 ), 1.0, wave_r );
per_frame_59=wave_g = if( equal( iIndex,1 ), 0.1, wave_g );
per_frame_60=wave_b = if( equal( iIndex,1 ), 0.1, wave_b );
per_frame_61=wave_r = if( equal( iIndex,3 ), 0.1, wave_r );
per_frame_62=wave_g = if( equal( iIndex,3 ), 0.1, wave_g );
per_frame_63=wave_b = if( equal( iIndex,3 ), 1.0, wave_b );
per_frame_64=wave_mystery = if( equal( iIndex%2,1) , -.55-(bass+prevBass)/60 , -.55 );
per_frame_65=warp = if( above(fCrashPhase,.96),warp+5*(totalv/0.03)*(1 - 4*(fCrashPhase-.96)),warp);
per_frame_66=wave_size = if( equal( iIndex%2, 0) ,  1, 0 );
per_frame_67=wave_a = if( equal( iIndex%2, 0 ), .75, 1.0 );
per_frame_68=totalv = if( equal(fCrashPhase,0),sqrt(sqr(b1vx)+sqr(b1vy))+sqrt(sqr(b2vx)+sqr(b2vy)),totalv);
per_frame_69=totalv= if(above(totalv,0.04),0.04,totalv);
per_frame_70=wave_mystery = if( above(fCrashPhase,.93), -7*(fCrashPhase-.93)*.45, wave_mystery);
per_frame_71=wave_r=if( above( fCrashPhase, .9 ), 1, wave_r );
per_frame_72=wave_g=if( above( fCrashPhase, .9 ), 1, wave_g );
per_frame_73=wave_b=if( above( fCrashPhase, .9 ), 1, wave_b );
per_frame_74=ob_r=0;ob_b=0;
per_frame_75=ob_r=if(above(Blue,0),0,1);
per_frame_76=ob_b=if(above(Blue,0),1,0);
per_frame_77=prevBass = if(equal( iIndex%2, 0 ), bass, 0 );
