s.boot
p=ProxySpace.push(s)

~out

~out.play

~canun={Decay2.ar(~trig.ar,0.05,0.21,SinOsc.ar(~freq.ar,0,0.25)+Saw.ar(~freq.ar,0.4325))};

~canun2={Decay2.ar(~trig.ar,0.05,0.21,SinOsc.ar(~freq.ar*16,0,0.125))};

~freq={Demand.ar(~trig.ar,0,Dseq([3,3,2,2,1,1,0,0].midiratio*60,100000))};
~freq={Demand.ar(~trig.ar,0,Dseq([0].midiratio*70,100000))};

~trig={Impulse.kr(7)};

~tin={SinOsc.ar(Lag.ar(~tinfreq.ar,0.1),0,1.5)};

~tin2={SinOsc.ar(Lag.ar(~tinfreq.ar*2,0.1),0,1.5)};

~tinfreq={Demand.ar(~trigfreq.ar,0,Dseq([2,1,0,2].midiratio*60*8,100000))*Demand.kr(Impulse.kr(7/2),0,Drand([0,1,1],100000))};
~trigfreq={Impulse.kr(7/8)};

~bataca={Decay2.ar(~trigbataca.ar,0.01,0.721,Mix(SinOsc.ar([60,70],pi/2,20)))*~ritmo.ar};

~ritmo={Demand.ar(~trigbataca.ar,0,Dseq([1,1,0,0],100000))};

~trigbataca={Impulse.ar(7/2)};

~out=~canun
~out=~canun+~tin
~out=~canun+~tin+~tin2+~bataca

~out=~canun+~tin+~tin2+~bataca+~canun2

~out=~bataca+~tin+~tin2+~canun2

~out=~bataca+~tin+~tin2

~out=~bataca

~out=0

~out=~bataca2

~bataca2={var t_trig=1;Mix(SinOsc.ar(EnvGen.kr(Env([160,40],[0.1])),pi/2,5))*EnvGen.kr(Env.perc(0.01,0.1),t_trig,doneAction:2)}