#N canvas 483 61 213 243 10; #X obj 11 177 outlet~; #X obj 70 178 outlet~; #N canvas 442 23 961 632 panner 0; #X obj 8 68 inlet~; #X obj 7 417 outlet~; #X obj 71 418 outlet~; #X obj 30 330 - 1; #X obj 30 359 * -1; #X obj 71 389 *~ 1; #X obj 7 389 *~ 1; #X obj 30 238 / 100; #X obj 30 216 random_range 0 100; #X obj 151 184 + 50; #X obj 47 188 - 50; #X obj 90 189 * -1; #X obj 47 163 * 0.5; #X obj 30 297 line; #X obj 47 124 r \$2-zample_pan_sprd; #X obj 30 273 pack 0 0; #X obj 57 68 inlet; #X connect 0 0 6 0; #X connect 0 0 5 0; #X connect 3 0 4 0; #X connect 4 0 6 1; #X connect 5 0 2 0; #X connect 6 0 1 0; #X connect 7 0 15 0; #X connect 8 0 7 0; #X connect 9 0 8 2; #X connect 10 0 11 0; #X connect 11 0 8 1; #X connect 12 0 10 0; #X connect 12 0 9 0; #X connect 13 0 5 1; #X connect 13 0 3 0; #X connect 14 0 12 0; #X connect 15 0 13 0; #X connect 16 0 8 0; #X restore 12 148 pd panner; #N canvas 306 351 492 289 envelope_generator 0; #X obj 166 2 inlet~; #X obj 167 240 outlet~; #X obj 167 210 *~; #X obj 215 2 inlet~; #X obj 215 83 cos~; #X obj 214 59 *~ 0.5; #X obj 214 34 -~ 0.5; #X obj 216 130 clip~ 0 1; #X obj 216 154 *~; #X obj 215 107 *~; #X obj 276 1 inlet; #X obj 319 1 r \$2-zample_envelope_min; #X connect 0 0 2 0; #X connect 2 0 1 0; #X connect 3 0 6 0; #X connect 4 0 9 0; #X connect 5 0 4 0; #X connect 6 0 5 0; #X connect 7 0 8 0; #X connect 8 0 2 1; #X connect 9 0 7 0; #X connect 10 0 8 1; #X connect 11 0 9 1; #X restore 12 124 pd envelope_generator; #N canvas 0 0 450 300 asynchfilter 0; #X obj 66 17 inlet~; #X obj 66 136 outlet~; #X obj 117 17 inlet; #X obj 84 83 line~; #X obj 67 111 *~; #X obj 85 61 pack 0 5; #X connect 0 0 4 0; #X connect 2 0 5 0; #X connect 3 0 4 1; #X connect 4 0 1 0; #X connect 5 0 3 0; #X restore 12 97 pd asynchfilter; #N canvas 253 130 576 557 ramp_generator 0; #X obj 35 12 inlet; #X obj 35 199 pack 0 0; #X obj 35 166 +; #X obj 35 295 outlet~; #X obj 135 12 inlet; #X obj 79 86 f; #X obj 35 61 t f f b; #X obj 51 127 * 44.1; #X text 36 348 1 start sample #; #X obj 181 12 inlet; #X text 35 324 INLETS:; #X obj 181 86 * 44.1; #X obj 123 295 outlet~; #X msg 169 218 1 \$1; #X msg 122 218 0 0; #X obj 122 247 line~; #X obj 138 172 t f b; #X text 36 387 3 pitch transposition; #X obj 92 12 inlet; #X text 36 374 2 total grain length [ms]; #X text 36 361 2 total grain length [samples]; #X obj 35 227 line~; #X obj 35 262 clip~ 0 0; #X connect 0 0 6 0; #X connect 1 0 21 0; #X connect 2 0 1 0; #X connect 4 0 5 0; #X connect 4 0 16 0; #X connect 5 0 1 1; #X connect 5 0 7 0; #X connect 6 0 2 0; #X connect 6 1 21 0; #X connect 6 2 5 0; #X connect 7 0 2 1; #X connect 9 0 11 0; #X connect 11 0 7 1; #X connect 13 0 15 0; #X connect 14 0 15 0; #X connect 15 0 12 0; #X connect 16 0 13 0; #X connect 16 1 14 0; #X connect 18 0 22 2; #X connect 21 0 22 0; #X connect 22 0 3 0; #X restore 11 34 pd ramp_generator; #N canvas 186 14 808 583 randomization 0; #X obj 35 364 outlet; #X obj 176 364 outlet; #X obj 611 364 outlet; #X text 176 410 1 start sample #; #X text 174 394 OUTLETS:; #X obj 380 364 outlet; #X obj 51 16 inlet; #X text 101 30 1 sample length [samples]; #X obj 35 217 / 1000; #X obj 35 239 *; #N canvas 0 0 450 300 zample_gain 0; #X obj 98 168 outlet; #X obj 183 168 outlet; #X obj 98 18 r \$2-zample_gain_min; #X obj 112 46 r \$2-zample_gain_sprd; #X obj 184 94 +; #X obj 188 68 / 100; #X obj 222 95 *; #X obj 98 94 +; #X obj 131 93 * -1; #X obj 184 118 pack 0 20; #X obj 98 119 pack 0 20; #X obj 98 143 line; #X obj 183 140 line; #X connect 2 0 7 0; #X connect 2 0 4 1; #X connect 2 0 6 0; #X connect 3 0 5 0; #X connect 4 0 9 0; #X connect 5 0 6 1; #X connect 6 0 4 0; #X connect 6 0 8 0; #X connect 7 0 10 0; #X connect 8 0 7 1; #X connect 9 0 12 0; #X connect 10 0 11 0; #X connect 11 0 0 0; #X connect 12 0 1 0; #X restore 499 173 pd zample_gain; #N canvas 0 0 450 300 sustain 0; #X obj 34 137 outlet; #X obj 120 137 outlet; #X obj 34 -10 r \$2-zample_sustain_min; #X obj 51 13 r \$2-zample_sustain_sprd; #X obj 120 60 +; #X obj 124 34 / 100; #X obj 158 61 *; #X obj 34 60 +; #X obj 67 59 * -1; #X obj 120 85 pack 0 20; #X obj 34 85 pack 0 20; #X obj 34 110 line; #X obj 120 109 line; #X connect 2 0 7 0; #X connect 2 0 4 1; #X connect 2 0 6 0; #X connect 3 0 5 0; #X connect 4 0 9 0; #X connect 5 0 6 1; #X connect 6 0 4 0; #X connect 6 0 8 0; #X connect 7 0 10 0; #X connect 8 0 7 1; #X connect 9 0 12 0; #X connect 10 0 11 0; #X connect 11 0 0 0; #X connect 12 0 1 0; #X restore 215 168 pd sustain; #N canvas 32 278 450 300 zample_start 0; #X obj 57 157 outlet; #X obj 143 158 outlet; #X obj 57 10 r \$2-zample_start_min; #X obj 76 30 r \$2-zample_start_sprd; #X obj 143 81 +; #X obj 147 55 / 100; #X obj 181 82 *; #X obj 57 81 +; #X obj 90 80 * -1; #X obj 143 105 pack 0 20; #X obj 57 106 pack 0 20; #X obj 143 130 line; #X obj 57 130 line; #X connect 2 0 7 0; #X connect 2 0 4 1; #X connect 2 0 6 0; #X connect 3 0 5 0; #X connect 4 0 9 0; #X connect 5 0 6 1; #X connect 6 0 4 0; #X connect 6 0 8 0; #X connect 7 0 10 0; #X connect 8 0 7 1; #X connect 9 0 11 0; #X connect 10 0 12 0; #X connect 11 0 1 0; #X connect 12 0 0 0; #X restore 85 97 pd zample_start; #N canvas 429 12 450 300 triggerz 0; #X obj 67 203 outlet; #X obj 121 204 outlet; #X obj 67 109 metro 800; #X obj 121 132 random 100; #X obj 67 58 >= \$1; #X obj 137 40 r \$2-zample_asynch; #X obj 121 153 >=; #X obj 67 19 r \$2-zample_voices; #X obj 67 79 change -1; #X obj 280 41 inlet; #X connect 2 0 3 0; #X connect 2 0 0 0; #X connect 3 0 6 0; #X connect 4 0 8 0; #X connect 5 0 6 1; #X connect 6 0 1 0; #X connect 7 0 4 0; #X connect 8 0 2 0; #X connect 9 0 2 1; #X restore 308 91 pd triggerz; #X obj 176 194 random_range; #X obj 460 194 random_range; #X obj 611 198 random_range; #X text 176 428 2 total grain length [ms]; #N canvas 0 0 450 300 zample_pitch 0; #X obj 98 168 outlet; #X obj 183 168 outlet; #X obj 184 94 +; #X obj 188 68 / 100; #X obj 222 95 *; #X obj 98 94 +; #X obj 131 93 * -1; #X obj 184 118 pack 0 20; #X obj 98 119 pack 0 20; #X obj 98 143 line; #X obj 183 140 line; #X obj 98 18 r \$2-pitch; #X obj 112 46 r \$2-pitch_sprd; #X connect 2 0 7 0; #X connect 3 0 4 1; #X connect 4 0 2 0; #X connect 4 0 6 0; #X connect 5 0 8 0; #X connect 6 0 5 1; #X connect 7 0 10 0; #X connect 8 0 9 0; #X connect 9 0 0 0; #X connect 10 0 1 0; #X connect 11 0 5 0; #X connect 11 0 2 1; #X connect 11 0 4 0; #X connect 12 0 3 0; #X restore 650 173 pd zample_pitch; #X text 100 13 INLET; #X text 177 477 5 grain pitch; #X obj 308 114 t b b b b; #X text 176 444 3 bang at grain start!; #X text 176 460 4 gain scaler; #X obj 460 364 outlet; #X obj 35 190 random_range 0 1000; #X connect 6 0 9 1; #X connect 8 0 9 0; #X connect 9 0 0 0; #X connect 10 0 15 1; #X connect 10 1 15 2; #X connect 11 0 14 1; #X connect 11 1 14 2; #X connect 13 0 21 0; #X connect 13 1 5 0; #X connect 14 0 13 0; #X connect 14 0 1 0; #X connect 15 0 24 0; #X connect 16 0 2 0; #X connect 18 0 16 1; #X connect 18 1 16 2; #X connect 21 0 25 0; #X connect 21 1 14 0; #X connect 21 2 15 0; #X connect 21 3 16 0; #X connect 25 0 8 0; #X restore 11 -9 pd randomization; #X obj 11 -29 inlet length_samples; #X obj 12 69 tabread4~ \$2-looper; #X connect 2 0 0 0; #X connect 2 1 1 0; #X connect 3 0 2 0; #X connect 4 0 3 0; #X connect 5 0 8 0; #X connect 5 1 3 1; #X connect 6 0 5 0; #X connect 6 1 5 2; #X connect 6 2 2 1; #X connect 6 2 4 1; #X connect 6 3 3 2; #X connect 6 4 5 3; #X connect 7 0 6 0; #X connect 7 0 5 1; #X connect 8 0 4 0;