///////////////////////////////////////////////////
// History, as it was on Mon Jul  9 23:32:49 2007.
///////////////////////////////////////////////////

// - 0:0:0 -  
p= ProxySpace.push(s.boot)

// - 0:0:5 -  
p.makeTempoClock(2)

// - 0:0:7.69 -  
c= p.clock

// - 0:0:13.38 -  
~fm.play

// - 0:0:26.86 -  
~fm.fadeTime_(5)

// - 0:1:14.17 -  
~fm= {SinOsc.ar(900*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3)}

// - 0:1:33.51 -  
~fm= {Pan2.ar(SinOsc.ar(900*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3), LFNoise2.kr(0.1))}

// - 0:1:55.55 -  
Tdef(\fm).play(c, quant:1)

// - 0:2:28.42 -  
(
Tdef(\fm, {
	inf.do{|i|
		~fm= {Pan2.ar(SinOsc.ar(900*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3), LFNoise2.kr(0.1))};
		8.wait;
	}
})
);

// - 0:2:48.73 -  
(
Tdef(\fm, {
	inf.do{|i|
		~fm= {Pan2.ar(SinOsc.ar(900*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
		8.wait;
	}
})
);

// - 0:3:13.83 -  
(
Tdef(\fm, {
	inf.do{|i|
		~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
		8.wait;
	}
})
);

// - 0:3:21.63 -  
~fm.fadeTime_(10)

// - 0:3:39.77 -  
~fm2.play

// - 0:3:42.05 -  
~fm2.fadeTime_(10)

// - 0:3:56.07 -  
~fm2= {SinOsc.ar(900*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3)}

// - 0:4:12.12 -  
~fm2= {Pan2.ar(SinOsc.ar(900*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3), LFNoise1.kr(0.1))}

// - 0:4:35.26 -  
~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3), LFNoise1.kr(0.1))}

// - 0:5:12.47 -  
(
Tdef(\fm, {
	inf.do{|i|
		if(i%2==0, {
			~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
		}, {
			~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
		});
		8.wait;
	}
})
);

// - 0:5:37.46 -  
~fm4.play

// - 0:5:39.69 -  
~fm4.fadeTime_(10)

// - 0:6:31.16 -  
~fm4= {LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>0.9*0.3), 900)}

// - 0:6:47.32 -  
~fm4= {LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>0.9*0.3), 900)}

// - 0:7:22.22 -  
~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}

// - 0:8:34.4 -  
(
Tdef(\fm, {
	inf.do{|i|
		switch(i%3,
			0, {
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:8:56.59 -  
~fm.fadeTime_(20)

// - 0:8:59.08 -  
~fm2.fadeTime_(20)

// - 0:9:0.52 -  
~fm4.fadeTime_(20)

// - 0:9:5.03 -  
~fm3.play

// - 0:9:13.91 -  
~fm3.fadeTime_(5)

// - 0:10:34.42 -  
~fm3= {SinOsc.ar(BrownNoise.ar*100+900, 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs))}

// - 0:11:9.05 -  
~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+400, 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs), 0))}

// - 0:11:33.42 -  
Tdef(\fm).clear

// - 0:11:38.61 -  
(
Tdef(\fm, {
	inf.do{|i|
		switch(i%3,
			0, {
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:11:50.82 -  
Tdef(\fm).stop

// - 0:11:52.53 -  
Tdef(\fm).clear

// - 0:11:54.11 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch(i%3,
			0, {
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:12:2.16 -  
Tdef(\fm).play(c, quant:1)

// - 0:13:32.9 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch(i%3,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+Rand(200, 400).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs), 0))};
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				111.postln;
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:14:3.58 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+Rand(200, 400).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs), 0))};
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				111.postln;
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:15:10.73 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+Rand(200, 400).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs), 0))};
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:15:42.57 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+Rand(200, 400).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs), 0))};
				~fm= {Pan2.ar(SinOsc.ar(Rand(800, 1000).round(100)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(Rand(600, 900).round(100)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(Rand(400, 600).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:16:12.65 -  
~rate= 0.2

// - 0:18:21.99 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+LFSaw.ar(~rate, 0, 100, 500).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs), 0))};
				~fm= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 100, 900).round(100)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(100)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:18:56.59 -  
~rate= 0.4

// - 0:19:29.96 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+LFSaw.ar(~rate, 0, 100, 500).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFNoise1.kr(1).abs)), 0, 0.8)};
				~fm= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 100, 900).round(100)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(100)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:19:55.57 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+LFSaw.ar(~rate, 0, 100, 500).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFSaw.kr(~rate).abs)), 0, 0.8)};
				~fm= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 100, 900).round(100)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(0.3)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1))};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(100)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(0.3)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(0.3)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1))}
			}
		);
		8.wait;
	}
})
);

// - 0:20:53.05 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+LFSaw.ar(~rate, 0, 100, 500).round(100), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFSaw.kr(~rate).abs)), 0, 0.7)};
				~fm= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 100, 900).round(100)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(100)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(50)*Saw.ar(45, 0.1, 1), SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:21:27.67 -  
~round= 100

// - 0:21:51.31 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*100+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, LFPulse.kr(c.tempo.reciprocal, 0, 0.2, LFSaw.kr(~rate).abs)), 0, 0.7)};
				~fm= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:21:56.06 -  
~rate= 0.5

// - 0:22:13.48 -  
~rate= 0.6

// - 0:22:25.56 -  
~round= 200

// - 0:23:50.21 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:24:30.78 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(SinOsc.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:24:55.11 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(Saw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:25:20.73 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(BrownNoise.ar*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:26:30.89 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(LPF.ar(BrownNoise.ar, ~fm2.abs*1000)*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:26:46.99 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(LPF.ar(BrownNoise.ar, ~fm2.abs+100*1000)*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:27:22.05 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:27:58.03 -  
~rate= 0.7

// - 0:28:10.69 -  
~rate.fadeTime_(5)

// - 0:28:11.6 -  
~rate= 0.8

// - 0:28:21.74 -  
~round= 100

// - 0:28:30.15 -  
~round= 50

// - 0:28:35.85 -  
~round= 15

// - 0:28:40.7 -  
~round= 5

// - 0:28:43.64 -  
~round= 0

// - 0:28:55.36 -  
~rate= 0.8

// - 0:29:25.85 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50)+LFSaw.ar(~rate, 0, 100, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 900).round(~round)*SinOsc.ar(45, 0, ~fm4.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 150, 750).round(~round)*Saw.ar(45, ~fm.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 100, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:29:32.22 -  
~rate= 0.9

// - 0:29:55.23 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50)+LFSaw.ar(~rate, 0, 200, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round)*SinOsc.ar(45, 0, ~fm4.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round)*Saw.ar(45, ~fm.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:30:0.23 -  
~rate= 1

// - 0:30:39.64 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50)+LFSaw.ar(~rate, 0, 300, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round)*SinOsc.ar(45, 0, ~fm4.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round)*Saw.ar(45, ~fm.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(BPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2)*Saw.ar(45, 0.1, 1), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:30:48.47 -  
~round= 100

// - 0:30:53.48 -  
~round= 200

// - 0:31:9.32 -  
~bas.play

// - 0:31:41.41 -  
~bas= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 10, 60).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};

// - 0:31:58.76 -  
~bas= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 10, 60).round(~round/10), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};

// - 0:32:13.69 -  
~bas= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 10, 60).round(~round/10), 0, SinOsc.kr(~rate)>Rand(0.1, 0.18)*0.3)), LFNoise2.kr(0.1), 0.8)};

// - 0:32:21.67 -  
~bas= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 10, 60).round(~round/10), 0, SinOsc.kr(~rate*2)>Rand(0.1, 0.18)*0.3)), LFNoise2.kr(0.1), 0.8)};

// - 0:32:49.05 -  
~bas= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 10, 60).round(~round/LFSaw.kr(0.1, 0, 5, 10)), 0, SinOsc.kr(~rate*2)>Rand(0.1, 0.18)*0.3)), LFNoise2.kr(0.1), 0.8)};

// - 0:33:4.43 -  
~bas= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 10, 60).round(~round/LFSaw.kr(0.1, 0, 5, 10)), 0, SinOsc.kr(~rate*4)>Rand(0.1, 0.18)*0.3)), LFNoise2.kr(0.1), 0.8)};

// - 0:33:13.89 -  
~rate= 1.1

// - 0:33:19.92 -  
~round= 100

// - 0:33:55.46 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50)+LFSaw.ar(~rate, 0, 300, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round)*SinOsc.ar(45, 0, ~fm4.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round)*Saw.ar(45, ~fm.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:34:11.6 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50)+LFSaw.ar(~rate, 0, 300, 500).round(~round), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round)*SinOsc.ar(45, 0, ~fm4.ar, 1), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:34:38.61 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(BrownNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:35:2.53 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, LFSaw.kr(~rate).abs))), 0, 0.7)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:35:48.04 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, Lag.kr(LFPulse.kr(c.tempo.reciprocal, 0, 0.1, ~bas.ar.abs))), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:36:5.79 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, Lag.ar(LFPulse.ar(c.tempo.reciprocal, 0, 0.1, ~bas.ar.abs))), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:36:37.19 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, Lag.ar(LFPulse.ar(c.tempo.reciprocal, 0, 0.1)*~bas.ar.abs)), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:36:52.23 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, LFPulse.ar(c.tempo.reciprocal, 0, 0.1)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:36:58.18 -  
~rate= 1.2

// - 0:37:17.92 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, ~fm2.ar.abs+100*1000)*50), 0, LFPulse.ar(c.tempo.reciprocal, 0, 0.1)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:37:35.45 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, 1000)*50), 0, LFPulse.ar(c.tempo.reciprocal, 0, 0.1)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 750).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:38:28.32 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, 1000)*50), 0, LFPulse.ar(~rate*0.5, 0, 0.1, 0.5)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 500).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:38:43.3 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(Lag.ar(LPF.ar(WhiteNoise.ar, 1000)*50), 0, LFPulse.ar(~rate*0.5, 0, 0.1, 0.5)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:39:22.13 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(50, BPF.ar(WhiteNoise.ar, 1000, 0.3)*2pi, LFPulse.ar(~rate*0.5, 0, 0.1, 0.5)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:39:35.68 -  
~rate= 1.3

// - 0:40:26.28 -  
~bas= {LPF.ar(LFSaw.ar(LFSaw.ar(~rate, [0, 0.5], 10, 60).round(~round/LFSaw.kr(0.1, 0, 5, 10)), 0, SinOsc.kr(~rate*4)>Rand(0.1, 0.18)*0.3))*0.6};

// - 0:42:0.76 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(50, BPF.ar(WhiteNoise.ar(LFPulse.ar(~rate).min(0)), 1000, 0.3)*2pi, LFPulse.ar(~rate*0.5, 0, 0.1, 0.5)*~bas.ar.abs), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:42:33.97 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(50, BPF.ar(WhiteNoise.ar(LFPulse.ar(~rate).min(0)), 1000, 0.3)*2pi, 0.2), 0, 0.6)};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:42:49.63 -  
~rate= 1.4

// - 0:43:45.18 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate).min(0)), 1000)*2pi, 0.2), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:44:5.37 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(100, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate).min(0)), 1000)*2pi, 0.2), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:44:39.05 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate).min(0)), 1000)*2pi, 0.2), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:45:7.99 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:45:36.27 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:46:25.32 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], 0, 0.2))}
			},
			2, {
				~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
			}
		);
		8.wait;
	}
})
);

// - 0:46:55.81 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], 0, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], 0, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:47:32.23 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				//~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], 0, 0.2))};
				~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], 0, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], 0, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:48:5.37 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				//~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], 0, 0.2))};
				//~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
				~fm3= {Pan2.ar(SinOsc.ar([900, 909], 0, 0.1))};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], 0, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], 0, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:48:11.61 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				//~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], 0, 0.2))};
				//~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
				~fm= {Pan2.ar(SinOsc.ar([900, 909], 0, 0.1))};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], 0, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], 0, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:49:22.11 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				//~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], ~bas.ar, 0.2))};
				//~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
				~fm= {Pan2.ar(SinOsc.ar([900, 909], 0, 0.1))};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], 0, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], 0, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:49:53.42 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				//~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))};
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], ~bas.ar, 0.2))};
				//~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
				~fm= {Pan2.ar(SinOsc.ar([900, 909], ~bas.ar, 0.1))};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], ~bas.ar, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], ~bas.ar, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:50:29.54 -  
~rate= 1.5

// - 0:50:32.98 -  
~round

// - 0:50:38.91 -  
~round= 100

// - 0:51:3.94 -  
~rate= 1.6

// - 0:51:27.12 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				[~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))},
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], ~bas.ar, 0.2))}].choose;
				//~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)};
				~fm= {Pan2.ar(SinOsc.ar([900, 909], ~bas.ar, 0.1))};
			},
			1, {
				//~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], ~bas.ar, 0.2))}
			},
			2, {
				//~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], ~bas.ar, 0.2))}
			}
		);
		8.wait;
	}
})
);

// - 0:52:9.12 -  
(
Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				[~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))},
				~fm3= {Pan2.ar(SinOsc.ar([600, 606], ~bas.ar, 0.2))}].choose;
				[~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)},
				~fm= {Pan2.ar(SinOsc.ar([900, 909], ~bas.ar, 0.1))}].choose;
			},
			1, {
				[~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)},
				~fm2= {Pan2.ar(SinOsc.ar([100, 101], ~bas.ar, 0.2))}].choose;
			},
			2, {
				~fm4= [{Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)},
				~fm4= {Pan2.ar(SinOsc.ar([400, 404], ~bas.ar, 0.2))}].choose;
			}
		);
		8.wait;
	}
})
);

// - 0:53:20.94 -  
//oops wrong with choose -shoudl be functions

// - 0:54:56.63 -  
(Tdef(\fm, {
	inf.do{|i|
		i.postln;
		switch((i%3).asInteger,
			0, {
				[{~fm3= {Pan2.ar(SinOsc.ar(SinOsc.kr(~rate/4)>0.8*50+50, LPF.ar(WhiteNoise.ar(LFPulse.ar(~rate*2).min(0)), 1000)*2pi, 0.3), SinOsc.kr(~rate, 0, 0.9))}},
				{~fm3= {Pan2.ar(SinOsc.ar([600, 606], ~bas.ar, 0.2))}}].choose.value;
				[{~fm= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 400, 1900).round(~round), 0, SinOsc.kr(~rate)>Rand(0.8, 0.98)*0.3)), LFNoise2.kr(0.1), 0.8)}},
				{~fm= {Pan2.ar(SinOsc.ar([900, 909], ~bas.ar, 0.1))}}].choose.value;
			},
			1, {
				[{~fm2= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 250, 1450).round(~round), 0, SinOsc.kr(~rate)>Rand(0.4, 0.9)*0.3)), LFNoise1.kr(0.1), 0.8)}},
				{~fm2= {Pan2.ar(SinOsc.ar([100, 101], ~bas.ar, 0.2))}}].choose.value;
			},
			2, {
				[{~fm4= {Pan2.ar(LPF.ar(LFSaw.ar(LFSaw.ar(~rate, 0, 200, 900).round(~round/2), 0, SinOsc.kr(~rate)>Rand(0.3, 0.7)*0.3), 900), LFNoise0.kr(0.1), 0.8)}},
				{~fm4= {Pan2.ar(SinOsc.ar([400, 404], ~bas.ar, 0.2))}}].choose.value;
			}
		);
		8.wait;
	}
}))

// - 0:55:26.52 -  
~fm.stop

// - 0:55:32.93 -  
~fm.release

// - 0:55:36.24 -  
~fm2.release

// - 0:55:39.82 -  
~fm3.release

// - 0:55:44.64 -  
~fm4.release

// - 0:55:48.41 -  
Tdef(\fm).stop

// - 0:56:4.28 -  
//jippie 107.7% cpu

// - 0:56:35.32 -  
//and for a while and survived

// - 0:57:10.81 -  
Tdef(\fm).stop

// - 0:57:27.79 -  
~fm3.stop

// - 0:57:38.22 -  
~fm4.stop

// - 0:57:45.41 -  
~fm2.stop

// - 0:57:52.88 -  
~fm.stop

// - 0:58:18.39 -  
~bas.stop

// - 0:58:20.23 -  
p.clear

// - 0:58:22.81 -  
p.pop