[preset00]
fRating=3.000000
fGammaAdj=1.000000
fDecay=0.500000
fVideoEchoZoom=1.000000
fVideoEchoAlpha=0.000000
nVideoEchoOrientation=3
nWaveMode=1
bAdditiveWaves=0
bWaveDots=1
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=11.200613
fWaveScale=1.285751
fWaveSmoothing=0.630000
fWaveParam=0.000000
fModWaveAlphaStart=0.540000
fModWaveAlphaEnd=0.000000
fWarpAnimSpeed=0.010000
fWarpScale=1.331000
fZoomExponent=1.000000
fShader=0.000000
zoom=0.999922
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=0.000000
wave_x=0.500000
wave_y=0.500000
ob_size=0.500000
ob_r=0.000000
ob_g=0.000000
ob_b=0.000000
ob_a=0.020000
ib_size=0.500000
ib_r=0.000000
ib_g=0.000000
ib_b=0.000000
ib_a=0.020000
nMotionVectorsX=12.000000
nMotionVectorsY=9.000000
mv_dx=0.000000
mv_dy=0.000000
mv_l=0.000000
mv_r=1.000000
mv_g=1.000000
mv_b=1.000000
mv_a=0.000000
wavecode_0_enabled=1
wavecode_0_samples=512
wavecode_0_sep=0
wavecode_0_bSpectrum=0
wavecode_0_bUseDots=0
wavecode_0_bDrawThick=1
wavecode_0_bAdditive=0
wavecode_0_scaling=0.891519
wavecode_0_smoothing=0.820000
wavecode_0_r=1.000000
wavecode_0_g=1.000000
wavecode_0_b=1.000000
wavecode_0_a=0.100000
wave_0_init1=t1 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init2=t2 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init3=t3 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init4=t4 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init5=t5 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init6=t6 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init7=t7 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init8=t8 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_0_init9=
wave_0_per_frame1=tm = time*.1;
wave_0_per_frame2=t1 = t1*sin(tm*t4) + (1-t1)*sin(tm*t7);
wave_0_per_frame3=t2 = t2*sin(tm*t5) + (1-t2)*sin(tm*t8);
wave_0_per_frame4=t3 = t3*sin(tm*t6) + (1-t3)*sin(tm*1);
wave_0_per_frame5=
wave_0_per_frame6=tic = min(time - tin,1);
wave_0_per_frame7=tin = time;
wave_0_per_frame8=
wave_0_per_frame9=tva = (tic*q1*.5);
wave_0_per_frame10=tvb = (tic*q2*.5);
wave_0_per_frame11=tvc = (tic*q3*.5);
wave_0_per_frame12=
wave_0_per_frame13=q1 = tva;
wave_0_per_frame14=q2 = tvb;
wave_0_per_frame15=q3 = tvc;
wave_0_per_frame16=
wave_0_per_frame17=sz = .1;
wave_0_per_frame18=ra = .1;
wave_0_per_frame19=len = if(above(q6,3),if(below(len,sz),len + ra*sz*tic,min(sz,len)),if(above(len,0),len - ra*sz*tic,max(0,len)));
wave_0_per_frame20=t4 = len;
wave_0_per_point1=ang = 0;
wave_0_per_point2=len = t4;
wave_0_per_point3=mad = .6;
wave_0_per_point4=
wave_0_per_point5=it = if(above(sample,0),(it+equal(lev,7)),1);
wave_0_per_point6=ita = (ita + 1)*above(sample,0);
wave_0_per_point7=
wave_0_per_point8=mod = if(equal(it%2,0),1,  if(equal((it+1)%4,0),2,  if(equal((it+3)%8,0),3,  if(equal((it+7)%16,0),4,  if(equal((it+15)%32,0),5,  if(equal((it+31)%64,0),6,  if(equal((it+63)%128,0),7,7)  ))))));
wave_0_per_point9=
wave_0_per_point10=sw = sw - 1;
wave_0_per_point11=sw = if(equal(lev,7),mod,sw)*above(sample,0);
wave_0_per_point12=
wave_0_per_point13=lev = if(above(sample,0),if(above(sw,0),lev-1,lev+1),7);
wave_0_per_point14=a = lev*.1*1.46;
wave_0_per_point15=a = equal(lev,7) + equal(lev,4) + equal(lev,1);
wave_0_per_point16=
wave_0_per_point17=ar = if(above(sample,0),ar,1);
wave_0_per_point18=ar = if(equal(lev,0),ar*-1,ar);
wave_0_per_point19=br = if(above(sample,0),br,1);
wave_0_per_point20=br = if(equal(lev,1),br*-1,br);
wave_0_per_point21=cr = if(above(sample,0),cr,1);
wave_0_per_point22=cr = if(equal(lev,2),cr*-1,cr);
wave_0_per_point23=dr = if(above(sample,0),dr,1);
wave_0_per_point24=dr = if(equal(lev,3),dr*-1,dr);
wave_0_per_point25=er = if(above(sample,0),er,1);
wave_0_per_point26=er = if(equal(lev,4),er*-1,er);
wave_0_per_point27=fr = if(above(sample,0),fr,1);
wave_0_per_point28=fr = if(equal(lev,5),fr*-1,fr);
wave_0_per_point29=gr = if(above(sample,0),gr,1);
wave_0_per_point30=gr = if(equal(lev,6),gr*-1,gr);
wave_0_per_point31=
wave_0_per_point32=mlev = lev*above(sample,0);
wave_0_per_point33=
wave_0_per_point34=swi = equal(q4,0)*equal(sample,0);
wave_0_per_point35=
wave_0_per_point36=ha = if(swi,1-2*rand(2),ha);
wave_0_per_point37=hb = if(swi,1-2*rand(2),hb);
wave_0_per_point38=hc = if(swi,1-2*rand(2),hc);
wave_0_per_point39=hd = if(swi,1-2*rand(2),hd);
wave_0_per_point40=he = if(swi,1-2*rand(2),he);
wave_0_per_point41=hf = if(swi,1-2*rand(2),hf);
wave_0_per_point42=hg = if(swi,1-2*rand(2),hg);
wave_0_per_point43=
wave_0_per_point44=aang = if(above(sample,0),aang,aang + q1*ha*1);
wave_0_per_point45=bang = if(above(sample,0),bang,bang + q1*hb*1.33);
wave_0_per_point46=cang = if(above(sample,0),cang,cang + q2*hc*1.67);
wave_0_per_point47=dang = if(above(sample,0),dang,dang + q2*hd*2);
wave_0_per_point48=eang = if(above(sample,0),eang,eang + q3*he*2.33);
wave_0_per_point49=fang = if(above(sample,0),fang,fang + q3*hf*2.67);
wave_0_per_point50=gang = if(above(sample,0),gang,gang + q3*hg*3);
wave_0_per_point51=
wave_0_per_point52=len = len*mad;
wave_0_per_point53=x = .5 + above(lev,0)*sin(aang)*len*ar;
wave_0_per_point54=y = 0.5 + above(lev,0)*cos(aang)*len;
wave_0_per_point55=
wave_0_per_point56=an = bang*(ar + br)*br;
wave_0_per_point57=len = len*mad;
wave_0_per_point58=x = x + above(lev,1)*sin(an)*len*br;
wave_0_per_point59=y = y + above(lev,1)*cos(an)*len;
wave_0_per_point60=
wave_0_per_point61=an = cang*(ar + br + cr)*cr;
wave_0_per_point62=len = len*mad;
wave_0_per_point63=x = x + above(lev,2)*sin(an)*len*cr;
wave_0_per_point64=y = y + above(lev,2)*cos(an)*len;
wave_0_per_point65=
wave_0_per_point66=an = dang*(ar + br + cr + dr)*dr;
wave_0_per_point67=len = len*mad;
wave_0_per_point68=x = x + above(lev,3)*sin(an)*len*dr;
wave_0_per_point69=y = y + above(lev,3)*cos(an)*len;
wave_0_per_point70=
wave_0_per_point71=an = eang*(ar + br + cr + dr + er)*er;
wave_0_per_point72=len = len*mad;
wave_0_per_point73=x = x + above(lev,4)*sin(an)*len*er;
wave_0_per_point74=y = y + above(lev,4)*cos(an)*len;
wave_0_per_point75=
wave_0_per_point76=an = fang*(ar + br + cr + dr + er + fr)*fr;
wave_0_per_point77=len = len*mad;
wave_0_per_point78=x = x + above(lev,5)*sin(an)*len*fr;
wave_0_per_point79=y = y + above(lev,5)*cos(an)*len;
wave_0_per_point80=
wave_0_per_point81=an = gang*(ar + br + cr + dr + er + fr + gr)*gr;
wave_0_per_point82=len = len*mad;
wave_0_per_point83=x = x + above(lev,6)*sin(an)*len*gr;
wave_0_per_point84=y = y + above(lev,6)*cos(an)*len;
wave_0_per_point85=
wave_0_per_point86=x = (x-.5)*.75 + .5;
wave_0_per_point87=
wave_0_per_point88=g = t1 + lev*.1;
wave_0_per_point89=r = t2 - lev*.1;
wave_0_per_point90=b = t3;
wave_0_per_point91=
wave_0_per_point92=r = if(equal(q5,1),1,r);
wave_0_per_point93=g = if(equal(q5,2),1,g);
wave_0_per_point94=b = if(equal(q5,3),1,b);
wave_0_per_point95=
wave_0_per_point96=r = r - int(r);
wave_0_per_point97=g = g - int(g);
wave_0_per_point98=b = b - int(b);
wavecode_1_enabled=1
wavecode_1_samples=512
wavecode_1_sep=0
wavecode_1_bSpectrum=0
wavecode_1_bUseDots=0
wavecode_1_bDrawThick=1
wavecode_1_bAdditive=0
wavecode_1_scaling=0.891519
wavecode_1_smoothing=0.820000
wavecode_1_r=1.000000
wavecode_1_g=1.000000
wavecode_1_b=1.000000
wavecode_1_a=0.100000
wave_1_init1=t1 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init2=t2 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init3=t3 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init4=t4 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init5=t5 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init6=t6 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init7=t7 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init8=t8 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_1_init9=
wave_1_per_frame1=tm = time*.1;
wave_1_per_frame2=t1 = t1*sin(tm*t4) + (1-t1)*sin(tm*t7);
wave_1_per_frame3=t2 = t2*sin(tm*t5) + (1-t2)*sin(tm*t8);
wave_1_per_frame4=t3 = t3*sin(tm*t6) + (1-t3)*sin(tm*1);
wave_1_per_frame5=
wave_1_per_frame6=tic = min(time - tin,1);
wave_1_per_frame7=tin = time;
wave_1_per_frame8=
wave_1_per_frame9=tva = (tic*q1*.5);
wave_1_per_frame10=tvb = (tic*q2*.5);
wave_1_per_frame11=tvc = (tic*q3*.5);
wave_1_per_frame12=
wave_1_per_frame13=q1 = tva;
wave_1_per_frame14=q2 = tvb;
wave_1_per_frame15=q3 = tvc;
wave_1_per_frame16=
wave_1_per_frame17=sz = .3;
wave_1_per_frame18=ra = .1;
wave_1_per_frame19=len = if(above(q6,2),if(below(len,sz),len + ra*sz*tic,min(sz,len)),if(above(len,0),len - ra*sz*tic,max(0,len)));
wave_1_per_frame20=t4 = len;
wave_1_per_point1=ang = 0;
wave_1_per_point2=len = t4;
wave_1_per_point3=mad = .6;
wave_1_per_point4=
wave_1_per_point5=it = if(above(sample,0),(it+equal(lev,7)),1);
wave_1_per_point6=ita = (ita + 1)*above(sample,0);
wave_1_per_point7=
wave_1_per_point8=mod = if(equal(it%2,0),1,  if(equal((it+1)%4,0),2,  if(equal((it+3)%8,0),3,  if(equal((it+7)%16,0),4,  if(equal((it+15)%32,0),5,  if(equal((it+31)%64,0),6,  if(equal((it+63)%128,0),7,7)  ))))));
wave_1_per_point9=
wave_1_per_point10=sw = sw - 1;
wave_1_per_point11=sw = if(equal(lev,7),mod,sw)*above(sample,0);
wave_1_per_point12=
wave_1_per_point13=lev = if(above(sample,0),if(above(sw,0),lev-1,lev+1),7);
wave_1_per_point14=a = lev*.1*1.46;
wave_1_per_point15=a = equal(lev,7) + equal(lev,4) + equal(lev,1);
wave_1_per_point16=
wave_1_per_point17=ar = if(above(sample,0),ar,1);
wave_1_per_point18=ar = if(equal(lev,0),ar*-1,ar);
wave_1_per_point19=br = if(above(sample,0),br,1);
wave_1_per_point20=br = if(equal(lev,1),br*-1,br);
wave_1_per_point21=cr = if(above(sample,0),cr,1);
wave_1_per_point22=cr = if(equal(lev,2),cr*-1,cr);
wave_1_per_point23=dr = if(above(sample,0),dr,1);
wave_1_per_point24=dr = if(equal(lev,3),dr*-1,dr);
wave_1_per_point25=er = if(above(sample,0),er,1);
wave_1_per_point26=er = if(equal(lev,4),er*-1,er);
wave_1_per_point27=fr = if(above(sample,0),fr,1);
wave_1_per_point28=fr = if(equal(lev,5),fr*-1,fr);
wave_1_per_point29=gr = if(above(sample,0),gr,1);
wave_1_per_point30=gr = if(equal(lev,6),gr*-1,gr);
wave_1_per_point31=
wave_1_per_point32=mlev = lev*above(sample,0);
wave_1_per_point33=
wave_1_per_point34=swi = equal(q4,0)*equal(sample,0);
wave_1_per_point35=
wave_1_per_point36=ha = if(swi,1-2*rand(2),ha);
wave_1_per_point37=hb = if(swi,1-2*rand(2),hb);
wave_1_per_point38=hc = if(swi,1-2*rand(2),hc);
wave_1_per_point39=hd = if(swi,1-2*rand(2),hd);
wave_1_per_point40=he = if(swi,1-2*rand(2),he);
wave_1_per_point41=hf = if(swi,1-2*rand(2),hf);
wave_1_per_point42=hg = if(swi,1-2*rand(2),hg);
wave_1_per_point43=
wave_1_per_point44=aang = if(above(sample,0),aang,aang + q1*ha*1);
wave_1_per_point45=bang = if(above(sample,0),bang,bang + q1*hb*1.33);
wave_1_per_point46=cang = if(above(sample,0),cang,cang + q2*hc*1.67);
wave_1_per_point47=dang = if(above(sample,0),dang,dang + q2*hd*2);
wave_1_per_point48=eang = if(above(sample,0),eang,eang + q3*he*2.33);
wave_1_per_point49=fang = if(above(sample,0),fang,fang + q3*hf*2.67);
wave_1_per_point50=gang = if(above(sample,0),gang,gang + q3*hg*3);
wave_1_per_point51=
wave_1_per_point52=len = len*mad;
wave_1_per_point53=x = .5 + above(lev,0)*sin(aang)*len*ar;
wave_1_per_point54=y = 0.5 + above(lev,0)*cos(aang)*len;
wave_1_per_point55=
wave_1_per_point56=an = bang*(ar + br)*br;
wave_1_per_point57=len = len*mad;
wave_1_per_point58=x = x + above(lev,1)*sin(an)*len*br;
wave_1_per_point59=y = y + above(lev,1)*cos(an)*len;
wave_1_per_point60=
wave_1_per_point61=an = cang*(ar + br + cr)*cr;
wave_1_per_point62=len = len*mad;
wave_1_per_point63=x = x + above(lev,2)*sin(an)*len*cr;
wave_1_per_point64=y = y + above(lev,2)*cos(an)*len;
wave_1_per_point65=
wave_1_per_point66=an = dang*(ar + br + cr + dr)*dr;
wave_1_per_point67=len = len*mad;
wave_1_per_point68=x = x + above(lev,3)*sin(an)*len*dr;
wave_1_per_point69=y = y + above(lev,3)*cos(an)*len;
wave_1_per_point70=
wave_1_per_point71=an = eang*(ar + br + cr + dr + er)*er;
wave_1_per_point72=len = len*mad;
wave_1_per_point73=x = x + above(lev,4)*sin(an)*len*er;
wave_1_per_point74=y = y + above(lev,4)*cos(an)*len;
wave_1_per_point75=
wave_1_per_point76=an = fang*(ar + br + cr + dr + er + fr)*fr;
wave_1_per_point77=len = len*mad;
wave_1_per_point78=x = x + above(lev,5)*sin(an)*len*fr;
wave_1_per_point79=y = y + above(lev,5)*cos(an)*len;
wave_1_per_point80=
wave_1_per_point81=an = gang*(ar + br + cr + dr + er + fr + gr)*gr;
wave_1_per_point82=len = len*mad;
wave_1_per_point83=x = x + above(lev,6)*sin(an)*len*gr;
wave_1_per_point84=y = y + above(lev,6)*cos(an)*len;
wave_1_per_point85=
wave_1_per_point86=x = (x-.5)*.75 + .5;
wave_1_per_point87=
wave_1_per_point88=g = t1 + lev*.1;
wave_1_per_point89=r = t2 - lev*.1;
wave_1_per_point90=b = t3;
wave_1_per_point91=
wave_1_per_point92=r = if(equal(q5,1),1,r);
wave_1_per_point93=g = if(equal(q5,2),1,g);
wave_1_per_point94=b = if(equal(q5,3),1,b);
wave_1_per_point95=
wave_1_per_point96=r = r - int(r);
wave_1_per_point97=g = g - int(g);
wave_1_per_point98=b = b - int(b);
wavecode_2_enabled=1
wavecode_2_samples=512
wavecode_2_sep=0
wavecode_2_bSpectrum=0
wavecode_2_bUseDots=0
wavecode_2_bDrawThick=1
wavecode_2_bAdditive=0
wavecode_2_scaling=0.891519
wavecode_2_smoothing=0.820000
wavecode_2_r=1.000000
wavecode_2_g=1.000000
wavecode_2_b=1.000000
wavecode_2_a=0.100000
wave_2_init1=t1 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init2=t2 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init3=t3 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init4=t4 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init5=t5 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init6=t6 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init7=t7 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init8=t8 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_2_init9=
wave_2_per_frame1=tm = time*.1;
wave_2_per_frame2=t1 = t1*sin(tm*t4) + (1-t1)*sin(tm*t7);
wave_2_per_frame3=t2 = t2*sin(tm*t5) + (1-t2)*sin(tm*t8);
wave_2_per_frame4=t3 = t3*sin(tm*t6) + (1-t3)*sin(tm*1);
wave_2_per_frame5=
wave_2_per_frame6=tic = min(time - tin,1);
wave_2_per_frame7=tin = time;
wave_2_per_frame8=
wave_2_per_frame9=tva = (tic*q1*.5);
wave_2_per_frame10=tvb = (tic*q2*.5);
wave_2_per_frame11=tvc = (tic*q3*.5);
wave_2_per_frame12=
wave_2_per_frame13=q1 = tva;
wave_2_per_frame14=q2 = tvb;
wave_2_per_frame15=q3 = tvc;
wave_2_per_frame16=
wave_2_per_frame17=sz = .4;
wave_2_per_frame18=ra = .1;
wave_2_per_frame19=len = if(above(q6,1),if(below(len,sz),len + ra*sz*tic,min(sz,len)),if(above(len,0),len - ra*sz*tic,max(0,len)));
wave_2_per_frame20=t4 = len;
wave_2_per_point1=ang = 0;
wave_2_per_point2=len = t4;
wave_2_per_point3=mad = .6;
wave_2_per_point4=
wave_2_per_point5=it = if(above(sample,0),(it+equal(lev,7)),1);
wave_2_per_point6=ita = (ita + 1)*above(sample,0);
wave_2_per_point7=
wave_2_per_point8=mod = if(equal(it%2,0),1,  if(equal((it+1)%4,0),2,  if(equal((it+3)%8,0),3,  if(equal((it+7)%16,0),4,  if(equal((it+15)%32,0),5,  if(equal((it+31)%64,0),6,  if(equal((it+63)%128,0),7,7)  ))))));
wave_2_per_point9=
wave_2_per_point10=sw = sw - 1;
wave_2_per_point11=sw = if(equal(lev,7),mod,sw)*above(sample,0);
wave_2_per_point12=
wave_2_per_point13=lev = if(above(sample,0),if(above(sw,0),lev-1,lev+1),7);
wave_2_per_point14=a = lev*.1*1.46;
wave_2_per_point15=a = equal(lev,7) + equal(lev,4) + equal(lev,1);
wave_2_per_point16=
wave_2_per_point17=ar = if(above(sample,0),ar,1);
wave_2_per_point18=ar = if(equal(lev,0),ar*-1,ar);
wave_2_per_point19=br = if(above(sample,0),br,1);
wave_2_per_point20=br = if(equal(lev,1),br*-1,br);
wave_2_per_point21=cr = if(above(sample,0),cr,1);
wave_2_per_point22=cr = if(equal(lev,2),cr*-1,cr);
wave_2_per_point23=dr = if(above(sample,0),dr,1);
wave_2_per_point24=dr = if(equal(lev,3),dr*-1,dr);
wave_2_per_point25=er = if(above(sample,0),er,1);
wave_2_per_point26=er = if(equal(lev,4),er*-1,er);
wave_2_per_point27=fr = if(above(sample,0),fr,1);
wave_2_per_point28=fr = if(equal(lev,5),fr*-1,fr);
wave_2_per_point29=gr = if(above(sample,0),gr,1);
wave_2_per_point30=gr = if(equal(lev,6),gr*-1,gr);
wave_2_per_point31=
wave_2_per_point32=mlev = lev*above(sample,0);
wave_2_per_point33=
wave_2_per_point34=swi = equal(q4,0)*equal(sample,0);
wave_2_per_point35=
wave_2_per_point36=ha = if(swi,1-2*rand(2),ha);
wave_2_per_point37=hb = if(swi,1-2*rand(2),hb);
wave_2_per_point38=hc = if(swi,1-2*rand(2),hc);
wave_2_per_point39=hd = if(swi,1-2*rand(2),hd);
wave_2_per_point40=he = if(swi,1-2*rand(2),he);
wave_2_per_point41=hf = if(swi,1-2*rand(2),hf);
wave_2_per_point42=hg = if(swi,1-2*rand(2),hg);
wave_2_per_point43=
wave_2_per_point44=aang = if(above(sample,0),aang,aang + q1*ha*1);
wave_2_per_point45=bang = if(above(sample,0),bang,bang + q1*hb*1.33);
wave_2_per_point46=cang = if(above(sample,0),cang,cang + q2*hc*1.67);
wave_2_per_point47=dang = if(above(sample,0),dang,dang + q2*hd*2);
wave_2_per_point48=eang = if(above(sample,0),eang,eang + q3*he*2.33);
wave_2_per_point49=fang = if(above(sample,0),fang,fang + q3*hf*2.67);
wave_2_per_point50=gang = if(above(sample,0),gang,gang + q3*hg*3);
wave_2_per_point51=
wave_2_per_point52=len = len*mad;
wave_2_per_point53=x = .5 + above(lev,0)*sin(aang)*len*ar;
wave_2_per_point54=y = 0.5 + above(lev,0)*cos(aang)*len;
wave_2_per_point55=
wave_2_per_point56=an = bang*(ar + br)*br;
wave_2_per_point57=len = len*mad;
wave_2_per_point58=x = x + above(lev,1)*sin(an)*len*br;
wave_2_per_point59=y = y + above(lev,1)*cos(an)*len;
wave_2_per_point60=
wave_2_per_point61=an = cang*(ar + br + cr)*cr;
wave_2_per_point62=len = len*mad;
wave_2_per_point63=x = x + above(lev,2)*sin(an)*len*cr;
wave_2_per_point64=y = y + above(lev,2)*cos(an)*len;
wave_2_per_point65=
wave_2_per_point66=an = dang*(ar + br + cr + dr)*dr;
wave_2_per_point67=len = len*mad;
wave_2_per_point68=x = x + above(lev,3)*sin(an)*len*dr;
wave_2_per_point69=y = y + above(lev,3)*cos(an)*len;
wave_2_per_point70=
wave_2_per_point71=an = eang*(ar + br + cr + dr + er)*er;
wave_2_per_point72=len = len*mad;
wave_2_per_point73=x = x + above(lev,4)*sin(an)*len*er;
wave_2_per_point74=y = y + above(lev,4)*cos(an)*len;
wave_2_per_point75=
wave_2_per_point76=an = fang*(ar + br + cr + dr + er + fr)*fr;
wave_2_per_point77=len = len*mad;
wave_2_per_point78=x = x + above(lev,5)*sin(an)*len*fr;
wave_2_per_point79=y = y + above(lev,5)*cos(an)*len;
wave_2_per_point80=
wave_2_per_point81=an = gang*(ar + br + cr + dr + er + fr + gr)*gr;
wave_2_per_point82=len = len*mad;
wave_2_per_point83=x = x + above(lev,6)*sin(an)*len*gr;
wave_2_per_point84=y = y + above(lev,6)*cos(an)*len;
wave_2_per_point85=
wave_2_per_point86=x = (x-.5)*.75 + .5;
wave_2_per_point87=
wave_2_per_point88=g = t1 + lev*.1;
wave_2_per_point89=r = t2 - lev*.1;
wave_2_per_point90=b = t3;
wave_2_per_point91=
wave_2_per_point92=r = if(equal(q5,1),1,r);
wave_2_per_point93=g = if(equal(q5,2),1,g);
wave_2_per_point94=b = if(equal(q5,3),1,b);
wave_2_per_point95=
wave_2_per_point96=r = r - int(r);
wave_2_per_point97=g = g - int(g);
wave_2_per_point98=b = b - int(b);
wavecode_3_enabled=1
wavecode_3_samples=512
wavecode_3_sep=0
wavecode_3_bSpectrum=0
wavecode_3_bUseDots=0
wavecode_3_bDrawThick=1
wavecode_3_bAdditive=0
wavecode_3_scaling=0.891519
wavecode_3_smoothing=0.820000
wavecode_3_r=1.000000
wavecode_3_g=1.000000
wavecode_3_b=1.000000
wavecode_3_a=0.100000
wave_3_init1=t1 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init2=t2 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init3=t3 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init4=t4 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init5=t5 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init6=t6 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init7=t7 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init8=t8 = 1 + (rand(101)*.01 - rand(101)*.01)*.3;
wave_3_init9=
wave_3_per_frame1=tm = time*.1;
wave_3_per_frame2=t1 = t1*sin(tm*t4) + (1-t1)*sin(tm*t7);
wave_3_per_frame3=t2 = t2*sin(tm*t5) + (1-t2)*sin(tm*t8);
wave_3_per_frame4=t3 = t3*sin(tm*t6) + (1-t3)*sin(tm*1);
wave_3_per_frame5=
wave_3_per_frame6=tic = min(time - tin,1);
wave_3_per_frame7=tin = time;
wave_3_per_frame8=
wave_3_per_frame9=tva = (tic*q1*.5);
wave_3_per_frame10=tvb = (tic*q2*.5);
wave_3_per_frame11=tvc = (tic*q3*.5);
wave_3_per_frame12=
wave_3_per_frame13=q1 = tva;
wave_3_per_frame14=q2 = tvb;
wave_3_per_frame15=q3 = tvc;
wave_3_per_frame16=
wave_3_per_frame17=sz = .5;
wave_3_per_frame18=ra = .1;
wave_3_per_frame19=len = if(above(q6,0),if(below(len,sz),len + ra*sz*tic,min(sz,len)),if(above(len,0),len - ra*sz*tic,max(0,len)));
wave_3_per_frame20=t4 = len;
wave_3_per_point1=ang = 0;
wave_3_per_point2=len = t4;
wave_3_per_point3=mad = .6;
wave_3_per_point4=
wave_3_per_point5=it = if(above(sample,0),(it+equal(lev,7)),1);
wave_3_per_point6=ita = (ita + 1)*above(sample,0);
wave_3_per_point7=
wave_3_per_point8=mod = if(equal(it%2,0),1,  if(equal((it+1)%4,0),2,  if(equal((it+3)%8,0),3,  if(equal((it+7)%16,0),4,  if(equal((it+15)%32,0),5,  if(equal((it+31)%64,0),6,  if(equal((it+63)%128,0),7,7)  ))))));
wave_3_per_point9=
wave_3_per_point10=sw = sw - 1;
wave_3_per_point11=sw = if(equal(lev,7),mod,sw)*above(sample,0);
wave_3_per_point12=
wave_3_per_point13=lev = if(above(sample,0),if(above(sw,0),lev-1,lev+1),7);
wave_3_per_point14=a = lev*.1*1.46;
wave_3_per_point15=a = equal(lev,7) + equal(lev,4) + equal(lev,1);
wave_3_per_point16=
wave_3_per_point17=ar = if(above(sample,0),ar,1);
wave_3_per_point18=ar = if(equal(lev,0),ar*-1,ar);
wave_3_per_point19=br = if(above(sample,0),br,1);
wave_3_per_point20=br = if(equal(lev,1),br*-1,br);
wave_3_per_point21=cr = if(above(sample,0),cr,1);
wave_3_per_point22=cr = if(equal(lev,2),cr*-1,cr);
wave_3_per_point23=dr = if(above(sample,0),dr,1);
wave_3_per_point24=dr = if(equal(lev,3),dr*-1,dr);
wave_3_per_point25=er = if(above(sample,0),er,1);
wave_3_per_point26=er = if(equal(lev,4),er*-1,er);
wave_3_per_point27=fr = if(above(sample,0),fr,1);
wave_3_per_point28=fr = if(equal(lev,5),fr*-1,fr);
wave_3_per_point29=gr = if(above(sample,0),gr,1);
wave_3_per_point30=gr = if(equal(lev,6),gr*-1,gr);
wave_3_per_point31=
wave_3_per_point32=mlev = lev*above(sample,0);
wave_3_per_point33=
wave_3_per_point34=swi = equal(q4,0)*equal(sample,0);
wave_3_per_point35=
wave_3_per_point36=ha = if(swi,1-2*rand(2),ha);
wave_3_per_point37=hb = if(swi,1-2*rand(2),hb);
wave_3_per_point38=hc = if(swi,1-2*rand(2),hc);
wave_3_per_point39=hd = if(swi,1-2*rand(2),hd);
wave_3_per_point40=he = if(swi,1-2*rand(2),he);
wave_3_per_point41=hf = if(swi,1-2*rand(2),hf);
wave_3_per_point42=hg = if(swi,1-2*rand(2),hg);
wave_3_per_point43=
wave_3_per_point44=aang = if(above(sample,0),aang,aang + (q1*.8 + q2*.1 + q3*.1)*ha*1);
wave_3_per_point45=bang = if(above(sample,0),bang,bang + (q1*.57 + q2*.33 + q3*.1)*hb*1.33);
wave_3_per_point46=cang = if(above(sample,0),cang,cang + (q1*.33 + q2*.57 + q3*.1)*hc*1.67);
wave_3_per_point47=dang = if(above(sample,0),dang,dang + (q1*.1 + q2*.8 + q3*.1)*hd*2);
wave_3_per_point48=eang = if(above(sample,0),eang,eang + (q1*.1 + q2*.57 + q3*.33)*he*2.33);
wave_3_per_point49=fang = if(above(sample,0),fang,fang + (q1*.1 + q2*.33 + q3*.57)*hf*2.67);
wave_3_per_point50=gang = if(above(sample,0),gang,gang + (q1*.1 + q2*.1 + q3*.8)*hg*3);
wave_3_per_point51=
wave_3_per_point52=len = len*mad;
wave_3_per_point53=x = .5 + above(lev,0)*sin(aang)*len*ar;
wave_3_per_point54=y = 0.5 + above(lev,0)*cos(aang)*len;
wave_3_per_point55=
wave_3_per_point56=an = bang*(ar + br)*br;
wave_3_per_point57=len = len*mad;
wave_3_per_point58=x = x + above(lev,1)*sin(an)*len*br;
wave_3_per_point59=y = y + above(lev,1)*cos(an)*len;
wave_3_per_point60=
wave_3_per_point61=an = cang*(ar + br + cr)*cr;
wave_3_per_point62=len = len*mad;
wave_3_per_point63=x = x + above(lev,2)*sin(an)*len*cr;
wave_3_per_point64=y = y + above(lev,2)*cos(an)*len;
wave_3_per_point65=
wave_3_per_point66=an = dang*(ar + br + cr + dr)*dr;
wave_3_per_point67=len = len*mad;
wave_3_per_point68=x = x + above(lev,3)*sin(an)*len*dr;
wave_3_per_point69=y = y + above(lev,3)*cos(an)*len;
wave_3_per_point70=
wave_3_per_point71=an = eang*(ar + br + cr + dr + er)*er;
wave_3_per_point72=len = len*mad;
wave_3_per_point73=x = x + above(lev,4)*sin(an)*len*er;
wave_3_per_point74=y = y + above(lev,4)*cos(an)*len;
wave_3_per_point75=
wave_3_per_point76=an = fang*(ar + br + cr + dr + er + fr)*fr;
wave_3_per_point77=len = len*mad;
wave_3_per_point78=x = x + above(lev,5)*sin(an)*len*fr;
wave_3_per_point79=y = y + above(lev,5)*cos(an)*len;
wave_3_per_point80=
wave_3_per_point81=an = gang*(ar + br + cr + dr + er + fr + gr)*gr;
wave_3_per_point82=len = len*mad;
wave_3_per_point83=x = x + above(lev,6)*sin(an)*len*gr;
wave_3_per_point84=y = y + above(lev,6)*cos(an)*len;
wave_3_per_point85=
wave_3_per_point86=x = (x-.5)*.75 + .5;
wave_3_per_point87=
wave_3_per_point88=g = t1 + lev*.1;
wave_3_per_point89=r = t2 - lev*.1;
wave_3_per_point90=b = t3;
wave_3_per_point91=
wave_3_per_point92=r = if(equal(q5,1),1,r);
wave_3_per_point93=g = if(equal(q5,2),1,g);
wave_3_per_point94=b = if(equal(q5,3),1,b);
wave_3_per_point95=
wave_3_per_point96=r = r - int(r);
wave_3_per_point97=g = g - int(g);
wave_3_per_point98=b = b - int(b);
shapecode_0_enabled=1
shapecode_0_sides=4
shapecode_0_additive=0
shapecode_0_thickOutline=0
shapecode_0_textured=1
shapecode_0_x=0.430000
shapecode_0_y=0.340000
shapecode_0_rad=3.356410
shapecode_0_ang=3.141593
shapecode_0_tex_ang=3.141593
shapecode_0_tex_zoom=0.138466
shapecode_0_r=1.000000
shapecode_0_g=1.000000
shapecode_0_b=1.000000
shapecode_0_a=1.000000
shapecode_0_r2=1.000000
shapecode_0_g2=1.000000
shapecode_0_b2=1.000000
shapecode_0_a2=1.000000
shapecode_0_border_r=1.000000
shapecode_0_border_g=1.000000
shapecode_0_border_b=1.000000
shapecode_0_border_a=0.000000
shape_0_per_frame1=it = (it + 1)*below(it,10000);
shape_0_per_frame2=x = if(it%2,.26,.7247);
shape_0_per_frame3=
shape_0_per_frame4=tm = time*.1;
shape_0_per_frame5=x = .26 + .4647*(tm-int(tm));
shape_0_per_frame6=
shape_0_per_frame7=y = .5 + .25*sin(time*.05);
shapecode_1_enabled=0
shapecode_1_sides=40
shapecode_1_additive=0
shapecode_1_thickOutline=0
shapecode_1_textured=1
shapecode_1_x=0.100000
shapecode_1_y=0.800000
shapecode_1_rad=0.833456
shapecode_1_ang=3.141593
shapecode_1_tex_ang=5.403539
shapecode_1_tex_zoom=0.499805
shapecode_1_r=1.000000
shapecode_1_g=1.000000
shapecode_1_b=1.000000
shapecode_1_a=1.000000
shapecode_1_r2=1.000000
shapecode_1_g2=1.000000
shapecode_1_b2=1.000000
shapecode_1_a2=0.000000
shapecode_1_border_r=1.000000
shapecode_1_border_g=1.000000
shapecode_1_border_b=1.000000
shapecode_1_border_a=0.000000
shapecode_2_enabled=0
shapecode_2_sides=40
shapecode_2_additive=0
shapecode_2_thickOutline=0
shapecode_2_textured=1
shapecode_2_x=0.800000
shapecode_2_y=0.200000
shapecode_2_rad=0.415324
shapecode_2_ang=3.141593
shapecode_2_tex_ang=5.403539
shapecode_2_tex_zoom=0.499805
shapecode_2_r=1.000000
shapecode_2_g=1.000000
shapecode_2_b=1.000000
shapecode_2_a=1.000000
shapecode_2_r2=1.000000
shapecode_2_g2=1.000000
shapecode_2_b2=1.000000
shapecode_2_a2=0.000000
shapecode_2_border_r=1.000000
shapecode_2_border_g=1.000000
shapecode_2_border_b=1.000000
shapecode_2_border_a=0.000000
shapecode_3_enabled=0
shapecode_3_sides=40
shapecode_3_additive=0
shapecode_3_thickOutline=0
shapecode_3_textured=1
shapecode_3_x=0.500000
shapecode_3_y=0.500000
shapecode_3_rad=1.847536
shapecode_3_ang=3.141593
shapecode_3_tex_ang=5.592035
shapecode_3_tex_zoom=0.499805
shapecode_3_r=1.000000
shapecode_3_g=1.000000
shapecode_3_b=1.000000
shapecode_3_a=1.000000
shapecode_3_r2=1.000000
shapecode_3_g2=1.000000
shapecode_3_b2=1.000000
shapecode_3_a2=1.000000
shapecode_3_border_r=1.000000
shapecode_3_border_g=1.000000
shapecode_3_border_b=1.000000
shapecode_3_border_a=0.000000
per_frame_1=wave_a = 0;
per_frame_2=
per_frame_3=tic = min(time - tin,1);
per_frame_4=tin = time;
per_frame_5=
per_frame_6=ra = 10;
per_frame_7=
per_frame_8=
per_frame_9=treb_avg = tic*(treb_avg*(1/tic - ra) + ra*treb);
per_frame_10=mid_avg = tic*(mid_avg*(1/tic - ra) + ra*mid);
per_frame_11=bass_avg = tic*(bass_avg*(1/tic - ra) + ra*bass);
per_frame_12=
per_frame_13=rb = 1;
per_frame_14=vav = tic*(vav*(1/tic - rb) + rb*(bass+treb+mid)*.33333);
per_frame_15=q1 = treb_avg;
per_frame_16=q2 = mid_avg;
per_frame_17=q3 = bass_avg;
per_frame_18=
per_frame_19=db = bass - bass_avg;
per_frame_20=
per_frame_21=it = (it + tic)*below(it,1);
per_frame_22=
per_frame_23=rb = .5*(1/tic);
per_frame_24=bvb = tic*(bass*rb + (1/tic-rb)*bvb);
per_frame_25=bd = bass - bvb;
per_frame_26=
per_frame_27=vm = vm - tic + swi;
per_frame_28=swi = above(bd - vm,0);
per_frame_29=
per_frame_30=q4 = 1-swi;
per_frame_31=
per_frame_32=cm = if(above(iter,30) + equal(time,0),rand(3) + 1,cm);
per_frame_33=iter = (iter + tic)*(1-above(iter,30));
per_frame_34=q5 = if(equal(cm,0),3,cm);
per_frame_35=
per_frame_36=cma = if(above(itar,5) + equal(time,0),int(vav*5),cma);
per_frame_37=itar = (itar + tic)*(1-above(itar,5));
per_frame_38=
per_frame_39=q6 = int(vav*5);
per_frame_40=
per_frame_41=monitor = q6;
per_frame_42=
