#N canvas 292 54 460 740 10; #X obj 39 43 openpanel; #X obj 39 87 soundfiler; #X obj 39 21 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #N canvas 0 0 450 300 graph2 0; #X array source-array 155948 float 2; #X coords 0 1 155948 -1 100 100 1; #X restore 266 14 graph; #N canvas 0 0 450 300 graph1 0; #X array grain-env 2048 float 0; #X coords 0 1 2047 -1 100 100 1; #X restore 266 129 graph; #X obj 248 283 * 44100; #X floatatom 258 264 5 0 0 0 - - -; #X obj 248 306 s grainpitch; #X obj 251 246 hsl 64 12 0.1 2 0 0 empty empty grainpitch 7 6 1 8 -262144 -1 -1 4300 1; #X msg 39 64 read -resize \$1 source-array; #X floatatom 182 264 5 0 0 0 - - -; #X obj 175 246 hsl 64 12 1 2000 0 0 empty empty graindur 7 6 1 8 -262144 -1 -1 1282 1; #X obj 172 306 s graindur; #X floatatom 53 216 5 0 0 0 - - -; #X obj 46 198 hsl 64 12 0 1 0 0 empty empty grainstart 7 6 1 8 -262144 -1 -1 2500 1; #X obj 57 305 s grainstart; #X obj 39 109 s filesize; #X obj 89 240 r filesize; #X obj 73 262 f; #X obj 43 239 t f b; #X obj 57 283 *; #X obj 296 465 catch~ bus; #X obj 297 532 dac~; #X obj 33 707 grainvoice; #X obj 40 136 loadbang; #N canvas 737 338 274 245 make-grain-env 0; #X obj 16 42 t b b; #X obj 16 106 f; #X obj 44 106 + 1; #X msg 54 63 0; #X obj 16 85 until; #X obj 16 127 t f f; #X obj 16 20 inlet; #X obj 16 188 tabwrite grain-env; #X msg 16 63 2048; #X obj 16 148 expr ($f1-1024)/1024; #X obj 16 168 expr 0.5+(cos($f1 * 3.141)/2); #X connect 0 0 8 0; #X connect 0 1 3 0; #X connect 1 0 2 0; #X connect 1 0 5 0; #X connect 2 0 1 1; #X connect 3 0 1 1; #X connect 4 0 1 0; #X connect 5 0 9 0; #X connect 5 1 7 1; #X connect 6 0 0 0; #X connect 8 0 4 0; #X connect 9 0 10 0; #X connect 10 0 7 0; #X restore 40 157 pd make-grain-env; #X obj 124 659 route 0 1 2 3; #X obj 145 481 f; #X obj 173 481 + 1; #X obj 145 506 mod 4; #X obj 145 530 t f b b; #X obj 124 637 pack f f f; #X obj 145 457 metro 100; #X obj 145 437 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1; #X obj 189 617 + 1; #X obj 189 596 / 10000; #X obj 189 575 random 200; #X msg 33 686 \$1 \$2 1; #X msg 116 685 \$1 \$2 1; #X msg 200 685 \$1 \$2 1; #X msg 279 684 \$1 \$2 1; #X obj 156 555 random 10000; #X obj 321 494 rev3~ 95 90; #X obj 171 347 r graindur; #X floatatom 347 264 5 0 0 0 - - -; #X obj 340 246 hsl 64 12 1 2 0 0 empty empty overlap 7 6 1 8 -262144 -1 -1 5300 1; #X obj 203 369 r overlap; #X obj 203 436 /; #X obj 203 412 t b f; #X obj 337 306 s overlap; #X obj 171 369 / 2; #X obj 116 706 grainvoice; #X obj 200 706 grainvoice; #X obj 279 705 grainvoice; #X connect 0 0 9 0; #X connect 1 0 16 0; #X connect 2 0 0 0; #X connect 5 0 7 0; #X connect 8 0 6 0; #X connect 8 0 5 0; #X connect 9 0 1 0; #X connect 11 0 10 0; #X connect 11 0 12 0; #X connect 14 0 13 0; #X connect 14 0 19 0; #X connect 17 0 18 1; #X connect 18 0 20 1; #X connect 19 0 20 0; #X connect 19 1 18 0; #X connect 20 0 15 0; #X connect 21 0 22 0; #X connect 21 0 22 1; #X connect 21 0 42 0; #X connect 24 0 25 0; #X connect 26 0 37 0; #X connect 26 1 38 0; #X connect 26 2 39 0; #X connect 26 3 40 0; #X connect 27 0 28 0; #X connect 27 0 29 0; #X connect 28 0 27 1; #X connect 29 0 30 0; #X connect 30 0 31 0; #X connect 30 1 41 0; #X connect 30 2 36 0; #X connect 31 0 26 0; #X connect 32 0 27 0; #X connect 33 0 32 0; #X connect 34 0 31 2; #X connect 35 0 34 0; #X connect 36 0 35 0; #X connect 37 0 23 0; #X connect 38 0 51 0; #X connect 39 0 52 0; #X connect 40 0 53 0; #X connect 41 0 31 1; #X connect 42 0 22 0; #X connect 42 1 22 1; #X connect 43 0 50 0; #X connect 45 0 44 0; #X connect 45 0 49 0; #X connect 46 0 48 0; #X connect 47 0 32 1; #X connect 48 0 47 0; #X connect 48 1 47 1; #X connect 50 0 47 0;