-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathpp.grainrev~.pd
1294 lines (1294 loc) · 43.9 KB
/
pp.grainrev~.pd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#N canvas 602 93 1469 816 10;
#X obj 289 205 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 289 245 metro 100;
#X msg 289 335 next bang;
#X obj 340 153 random;
#X obj 340 220 +;
#N canvas 537 52 560 555 envelope 0;
#N canvas 884 263 661 699 hann 0;
#X obj 102 334 until;
#X obj 102 355 f;
#X obj 129 361 + 1;
#X msg 167 330 0;
#X obj 154 205 t b b;
#X obj 103 382 t f f;
#X obj 99 499 expr -cos($f1*3.14159)*.5+.5;
#X obj 322 526 expr -cos($f1*3.14159)*.5+.5;
#X obj 322 551 * -1;
#X obj 323 573 + 1;
#X obj 181 421 moses;
#X obj 169 612 pow 1;
#X obj 445 120 exp;
#X obj 445 28 / 100;
#X obj 291 8 inlet x;
#X obj 101 468 /;
#X obj 102 292 f 1024;
#X obj 206 658 tabwrite \$0-window;
#X obj 322 497 expr ($f1-$f2)/(1024-$f2-1);
#X obj 444 143 t b f;
#X obj 290 135 t b f;
#X obj 445 8 inlet;
#X text 486 10 shape;
#X connect 0 0 1 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 16 0;
#X connect 4 1 3 0;
#X connect 5 0 10 0;
#X connect 5 1 17 1;
#X connect 6 0 11 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 11 0;
#X connect 10 0 15 0;
#X connect 10 1 18 0;
#X connect 11 0 17 0;
#X connect 12 0 19 0;
#X connect 13 0 12 0;
#X connect 14 0 20 0;
#X connect 15 0 6 0;
#X connect 16 0 0 0;
#X connect 18 0 7 0;
#X connect 19 0 4 0;
#X connect 19 1 11 1;
#X connect 20 0 4 0;
#X connect 20 1 10 1;
#X connect 20 1 15 1;
#X connect 20 1 18 1;
#X connect 21 0 13 0;
#X restore 93 500 pd hann;
#N canvas 702 50 631 726 trapez 0;
#X obj 43 374 until;
#X obj 43 395 f;
#X obj 70 401 + 1;
#X msg 161 344 0;
#X obj 120 480 moses;
#X obj 134 280 t b b;
#X obj 119 439 t f f;
#X obj 118 608 clip 0 1;
#X obj 120 583 *;
#X obj 238 12 inlet x;
#X obj 435 82 / 100;
#X obj 435 107 + 1;
#X obj 435 173 max 1;
#X obj 43 347 f 1024;
#X obj 213 505 expr -($f1-$f2)/(1024-$f2-1)+1;
#X obj 435 195 t b f;
#X obj 238 164 t b f f f;
#X obj 148 640 tabwrite \$0-window;
#X obj 120 531 / 1024;
#X obj 435 58 + 200;
#X obj 435 151 -;
#X msg 435 129 6 \$1;
#X obj 435 15 inlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 0 6 0;
#X connect 2 0 1 1;
#X connect 3 0 1 1;
#X connect 4 0 18 0;
#X connect 4 1 14 0;
#X connect 5 0 13 0;
#X connect 5 1 3 0;
#X connect 6 0 4 0;
#X connect 6 1 17 1;
#X connect 7 0 17 0;
#X connect 8 0 7 0;
#X connect 9 0 16 0;
#X connect 10 0 11 0;
#X connect 11 0 21 0;
#X connect 12 0 15 0;
#X connect 13 0 0 0;
#X connect 14 0 8 0;
#X connect 15 0 5 0;
#X connect 15 1 8 1;
#X connect 16 0 5 0;
#X connect 16 1 4 1;
#X connect 16 2 18 1;
#X connect 16 3 14 1;
#X connect 18 0 8 0;
#X connect 19 0 10 0;
#X connect 20 0 12 0;
#X connect 21 0 20 0;
#X connect 22 0 19 0;
#X restore 296 501 pd trapez;
#X obj 125 175 f;
#X obj 241 117 t b f;
#X obj 401 114 t b f;
#N canvas 633 50 680 699 curved2 0;
#X obj 64 415 until;
#X obj 64 436 f;
#X obj 91 442 + 1;
#X msg 139 412 0;
#X obj 113 328 t b b;
#X obj 63 472 t f f;
#X obj 53 586 expr if($f2<=0 \, -pow((1-$f1) \, (-$f2+1))+1 \, pow($f1 \, $f2+1));
#X obj 127 631 expr if($f2<=0 \, -pow((1-$f1) \, (-$f2+1))+1 \, pow($f1 \, $f2+1));
#X obj 128 654 * -1;
#X obj 129 676 + 1;
#X obj 63 509 moses;
#X obj 576 171 exp;
#X obj 478 86 moses 0;
#X obj 478 168 * -1;
#X obj 479 209 exp;
#X obj 480 230 * -1;
#X obj 478 123 + 1;
#X obj 478 146 moses -1;
#X obj 479 190 - 1;
#X obj 479 62 - 1;
#X obj 63 551 /;
#X obj 302 21 inlet x;
#X obj 479 38 / 100;
#X obj 493 265 t b b f f;
#X obj 478 608 * -1;
#X obj 64 381 f 1024;
#X obj 141 729 tabwrite \$0-window;
#X obj 189 546 expr ($f1-$f2)/(1024-$f2-1);
#X obj 302 211 t b f f f;
#X obj 479 18 inlet;
#X connect 0 0 1 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 25 0;
#X connect 4 1 3 0;
#X connect 5 0 10 0;
#X connect 5 1 26 1;
#X connect 6 0 26 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 26 0;
#X connect 10 0 20 0;
#X connect 10 1 27 0;
#X connect 11 0 23 0;
#X connect 12 0 16 0;
#X connect 12 1 11 0;
#X connect 13 0 18 0;
#X connect 14 0 15 0;
#X connect 15 0 23 0;
#X connect 16 0 17 0;
#X connect 17 0 13 0;
#X connect 17 1 23 0;
#X connect 18 0 14 0;
#X connect 19 0 12 0;
#X connect 20 0 6 0;
#X connect 21 0 28 0;
#X connect 22 0 19 0;
#X connect 23 0 4 0;
#X connect 23 2 6 1;
#X connect 23 3 24 0;
#X connect 24 0 7 1;
#X connect 25 0 0 0;
#X connect 27 0 7 0;
#X connect 28 0 4 0;
#X connect 28 1 10 1;
#X connect 28 2 20 1;
#X connect 28 3 27 1;
#X connect 29 0 22 0;
#X restore 219 501 pd curved2;
#N canvas 633 50 680 699 curved 0;
#X obj 66 424 until;
#X obj 66 445 f;
#X obj 93 451 + 1;
#X msg 141 421 0;
#X obj 115 337 t b b;
#X obj 65 481 t f f;
#X obj 55 595 expr if($f2<=0 \, -pow((1-$f1) \, (-$f2+1))+1 \, pow($f1 \, $f2+1));
#X obj 129 640 expr if($f2<=0 \, -pow((1-$f1) \, (-$f2+1))+1 \, pow($f1 \, $f2+1));
#X obj 130 663 * -1;
#X obj 131 685 + 1;
#X obj 65 518 moses;
#X obj 578 180 exp;
#X obj 480 95 moses 0;
#X obj 480 177 * -1;
#X obj 481 218 exp;
#X obj 482 239 * -1;
#X obj 480 132 + 1;
#X obj 480 155 moses -1;
#X obj 481 199 - 1;
#X obj 481 71 - 1;
#X obj 65 560 /;
#X obj 304 30 inlet x;
#X obj 481 47 / 100;
#X obj 495 274 t b b f f;
#X obj 66 397 f 1024;
#X obj 143 741 tabwrite \$0-window;
#X obj 191 555 expr ($f1-$f2)/(1024-$f2-1);
#X obj 304 220 t b f f f;
#X obj 481 27 inlet;
#X connect 0 0 1 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 24 0;
#X connect 4 1 3 0;
#X connect 5 0 10 0;
#X connect 5 1 25 1;
#X connect 6 0 25 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 25 0;
#X connect 10 0 20 0;
#X connect 10 1 26 0;
#X connect 11 0 23 0;
#X connect 12 0 16 0;
#X connect 12 1 11 0;
#X connect 13 0 18 0;
#X connect 14 0 15 0;
#X connect 15 0 23 0;
#X connect 16 0 17 0;
#X connect 17 0 13 0;
#X connect 17 1 23 0;
#X connect 18 0 14 0;
#X connect 19 0 12 0;
#X connect 20 0 6 0;
#X connect 21 0 27 0;
#X connect 22 0 19 0;
#X connect 23 0 4 0;
#X connect 23 2 6 1;
#X connect 23 3 7 1;
#X connect 24 0 0 0;
#X connect 26 0 7 0;
#X connect 27 0 4 0;
#X connect 27 1 10 1;
#X connect 27 2 20 1;
#X connect 27 3 26 1;
#X connect 28 0 22 0;
#X restore 148 501 pd curved;
#X obj 124 375 pack 0 512;
#X obj 248 375 pack 0 0;
#X obj 124 200 t f f;
#N canvas 227 104 947 699 complex 0;
#X obj 190 316 until;
#X obj 190 337 f;
#X obj 217 343 + 1;
#X msg 265 302 0;
#X obj 211 240 t b b;
#X obj 460 630 expr -cos($f1*3.14159)*.5+.5;
#X obj 282 512 moses;
#X obj 235 741 pow 1;
#X obj 680 199 t b f;
#X obj 254 674 expr -cos($f1*3.14159)*.5+.5;
#X obj 324 774 *;
#X obj 460 653 * -1;
#X obj 461 675 + 1;
#X obj 190 612 expr -cos($f1*18.8496)*.5+.5;
#X obj 399 143 t b f f f;
#X obj 190 482 t float float;
#X obj 190 367 t float float;
#X obj 189 291 f 1024;
#X obj 190 588 / 1024;
#X obj 460 602 expr ($f1-$f2)/(1024-$f2-1);
#X obj 324 797 tabwrite \$0-window;
#X obj 254 651 / 512;
#X obj 680 71 + 200;
#X obj 680 93 / 400;
#X obj 680 137 + 0.2;
#X obj 680 115 * 2.5;
#X obj 399 28 inlet;
#X obj 679 36 inlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 0 16 0;
#X connect 2 0 1 1;
#X connect 3 0 1 1;
#X connect 4 0 17 0;
#X connect 4 1 3 0;
#X connect 5 0 11 0;
#X connect 6 0 21 0;
#X connect 6 1 19 0;
#X connect 7 0 10 0;
#X connect 8 0 4 0;
#X connect 8 1 7 1;
#X connect 9 0 10 1;
#X connect 10 0 20 0;
#X connect 11 0 12 0;
#X connect 12 0 10 1;
#X connect 13 0 7 0;
#X connect 14 0 4 0;
#X connect 14 1 6 1;
#X connect 14 2 21 1;
#X connect 14 3 19 1;
#X connect 15 0 18 0;
#X connect 15 1 6 0;
#X connect 16 0 15 0;
#X connect 16 1 20 1;
#X connect 17 0 0 0;
#X connect 18 0 13 0;
#X connect 19 0 5 0;
#X connect 21 0 9 0;
#X connect 22 0 23 0;
#X connect 23 0 25 0;
#X connect 24 0 8 0;
#X connect 25 0 24 0;
#X connect 26 0 14 0;
#X connect 27 0 22 0;
#X restore 373 501 pd complex;
#X obj 124 401 route 0 1 2 3 4;
#X obj 246 400 route 0 1 2 3 4;
#X obj 241 50 r \$0-env-bias;
#X obj 401 44 r \$0-env-shape;
#X obj 401 68 * 400;
#X obj 401 90 - 200;
#X obj 241 71 * 974;
#X obj 241 93 + 25;
#X obj 125 60 r \$0-env-type;
#X connect 2 0 9 0;
#X connect 3 0 2 0;
#X connect 3 1 7 1;
#X connect 4 0 2 0;
#X connect 4 1 8 1;
#X connect 7 0 11 0;
#X connect 8 0 12 0;
#X connect 9 0 7 0;
#X connect 9 1 8 0;
#X connect 11 0 0 0;
#X connect 11 1 6 0;
#X connect 11 2 5 0;
#X connect 11 3 1 0;
#X connect 11 4 10 0;
#X connect 12 0 0 1;
#X connect 12 1 6 1;
#X connect 12 2 5 1;
#X connect 12 3 1 1;
#X connect 12 4 10 1;
#X connect 13 0 17 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 4 0;
#X connect 17 0 18 0;
#X connect 18 0 3 0;
#X connect 19 0 2 0;
#X restore 766 195 pd envelope;
#X obj 316 293 s \$0-trigger;
#X obj 340 129 r \$0-trigger;
#X obj 289 79 r \$0-int_triggeronoff;
#N canvas 306 346 1140 587 map 0;
#X obj 267 252 s \$0-grainsize;
#X obj 267 44 r \$0-size;
#X obj 316 96 r \$0-random-size;
#X obj 283 149 random;
#X obj 283 71 r \$0-trigger;
#X obj 267 226 +;
#X obj 281 199 t b f;
#X obj 44 200 s \$0-grainpitch;
#X obj 64 135 r \$0-pitch;
#X obj 44 178 +;
#X obj 63 155 t b f;
#X obj 44 25 r \$0-trigger;
#X obj 44 114 -;
#X obj 44 92 random;
#X obj 83 48 r \$0-random-pitch;
#X obj 83 71 * 2;
#X obj 503 240 s \$0-grainpan;
#X obj 503 191 / 100;
#X obj 532 41 r \$0-trigger;
#X obj 503 19 r \$0-pan;
#X obj 503 218 clip -1 1;
#X obj 572 61 r \$0-random-pan;
#X obj 571 81 * 2;
#X obj 532 123 -;
#X obj 532 101 random;
#X obj 727 27 r \$0-amp;
#X obj 727 182 + 100;
#X obj 727 204 dbtorms;
#X obj 737 128 t b f;
#X obj 738 63 r \$0-trigger;
#X obj 738 106 random;
#X obj 777 84 r \$0-random-amp;
#X obj 727 225 s \$0-grainamp;
#X obj 727 156 -;
#X obj 532 145 t b f;
#X obj 503 168 +;
#X obj 316 124 * 1000;
#X obj 283 173 / 1000;
#X obj 46 425 +;
#X obj 65 402 t b f;
#X obj 46 272 r \$0-trigger;
#X obj 46 361 -;
#X obj 46 339 random;
#X obj 85 318 * 2;
#X obj 85 295 r \$0-random-pitch-feed;
#X obj 46 447 s \$0-grainpitch-feed;
#X obj 66 382 r \$0-pitch-feed;
#X obj 961 27 r \$0-distance-set;
#X obj 961 314 max;
#X obj 961 350 s \$0-distancer;
#X obj 1079 180 r \$0-max-grains;
#X obj 1079 203 t b f;
#X obj 1026 112 r \$0-random-size;
#X obj 975 85 r \$0-size;
#X obj 1026 137 t b f;
#X obj 1026 167 +;
#X obj 975 176 abs;
#X obj 1026 218 max;
#X obj 1026 190 t b f;
#X obj 975 136 t f f;
#X obj 1026 261 / 4;
#X obj 961 53 pipe 0;
#X obj 534 307 r \$0-trigger;
#X obj 505 504 clip -1 1;
#X obj 573 347 * 2;
#X obj 534 389 -;
#X obj 534 367 random;
#X obj 534 411 t b f;
#X obj 505 454 +;
#X obj 505 285 r \$0-pan-feed;
#X obj 574 327 r \$0-random-pan-feed;
#X obj 505 526 s \$0-grainpan-feed;
#X obj 505 477 / 100;
#X connect 1 0 5 0;
#X connect 2 0 36 0;
#X connect 3 0 37 0;
#X connect 4 0 3 0;
#X connect 5 0 0 0;
#X connect 6 0 5 0;
#X connect 6 1 5 1;
#X connect 8 0 10 0;
#X connect 9 0 7 0;
#X connect 10 0 9 0;
#X connect 10 1 9 1;
#X connect 11 0 13 0;
#X connect 12 0 9 0;
#X connect 13 0 12 0;
#X connect 14 0 12 1;
#X connect 14 0 15 0;
#X connect 15 0 13 1;
#X connect 17 0 20 0;
#X connect 18 0 24 0;
#X connect 19 0 35 0;
#X connect 20 0 16 0;
#X connect 21 0 22 0;
#X connect 21 0 23 1;
#X connect 22 0 24 1;
#X connect 23 0 34 0;
#X connect 24 0 23 0;
#X connect 25 0 33 0;
#X connect 26 0 27 0;
#X connect 27 0 32 0;
#X connect 28 0 33 0;
#X connect 28 1 33 1;
#X connect 29 0 30 0;
#X connect 30 0 28 0;
#X connect 31 0 30 1;
#X connect 33 0 26 0;
#X connect 34 0 35 0;
#X connect 34 1 35 1;
#X connect 35 0 17 0;
#X connect 36 0 3 1;
#X connect 37 0 6 0;
#X connect 38 0 45 0;
#X connect 39 0 38 0;
#X connect 39 1 38 1;
#X connect 40 0 42 0;
#X connect 41 0 38 0;
#X connect 42 0 41 0;
#X connect 43 0 42 1;
#X connect 44 0 41 1;
#X connect 44 0 43 0;
#X connect 46 0 39 0;
#X connect 47 0 61 0;
#X connect 48 0 49 0;
#X connect 50 0 51 0;
#X connect 51 0 60 0;
#X connect 51 1 60 1;
#X connect 52 0 54 0;
#X connect 53 0 59 0;
#X connect 54 0 55 0;
#X connect 54 1 55 1;
#X connect 55 0 58 0;
#X connect 56 0 57 0;
#X connect 57 0 60 0;
#X connect 58 0 57 0;
#X connect 58 1 57 1;
#X connect 59 0 56 0;
#X connect 59 1 55 0;
#X connect 60 0 48 1;
#X connect 61 0 48 0;
#X connect 62 0 66 0;
#X connect 63 0 71 0;
#X connect 64 0 66 1;
#X connect 65 0 67 0;
#X connect 66 0 65 0;
#X connect 67 0 68 0;
#X connect 67 1 68 1;
#X connect 68 0 72 0;
#X connect 69 0 68 0;
#X connect 70 0 64 0;
#X connect 70 0 65 1;
#X connect 72 0 63 0;
#X restore 766 216 pd map;
#N canvas 994 71 784 711 stuff 0;
#X obj 176 94 r \$0-visbng;
#X obj 196 225 s \$0-visbngr;
#X msg 176 197 color 0 0;
#X msg 260 197 color 10 10;
#X obj 260 175 del 250;
#X obj 176 116 t b;
#X obj 530 291 /;
#X obj 559 269 t b f;
#X obj 530 312 i;
#X obj 593 362 r \$0-int_triggeronoff;
#X obj 529 487 spigot;
#X obj 593 384 t f f;
#X obj 541 403 sel 1;
#X obj 530 423 f;
#X obj 568 591 s \$0-active-grains;
#X msg 568 569 label \$1;
#X obj 606 469 loadbang;
#X msg 606 491 0;
#X obj 568 547 makefilename %d;
#X obj 512 463 f;
#X obj 281 223 s \$0-namecnv;
#X obj 454 425 metro 100;
#X obj 530 333 abs;
#X obj 454 383 r \$0-visbng;
#X obj 454 404 t b;
#X obj 440 408 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X msg 89 146 relocate 532x262+1+1 1x1+50+60 \, vis 1 \, editmode 0;
#X obj 530 356 + 1;
#X obj 563 337 r \$0-max-grains;
#X obj 530 382 min 4;
#X obj 192 397 r \$0-max-grains;
#X text 19 273 grain-distance should not fall below grain-size / max.grains;
#X obj 192 420 t b f;
#X obj 139 329 r \$0-random-size;
#X obj 88 302 r \$0-size;
#X obj 139 527 s \$0-distancer;
#X obj 139 354 t b f;
#X obj 139 384 +;
#X obj 88 393 abs;
#X obj 139 435 max;
#X obj 139 407 t b f;
#X obj 88 353 t f f;
#X msg 139 505 range \$1 1e+09 \, bang;
#X obj 139 478 / 4;
#X obj 530 109 r \$0-random-size;
#X obj 479 82 r \$0-size;
#X obj 530 134 t b f;
#X obj 530 164 +;
#X obj 479 173 abs;
#X obj 530 215 max;
#X obj 530 187 t b f;
#X obj 479 133 t f f;
#X obj 559 247 r \$0-distance;
#X obj 89 170 s pd-\$0-grainrev~;
#X connect 0 0 5 0;
#X connect 2 0 1 0;
#X connect 2 0 20 0;
#X connect 3 0 1 0;
#X connect 3 0 20 0;
#X connect 4 0 3 0;
#X connect 5 0 26 0;
#X connect 5 0 4 0;
#X connect 5 0 2 0;
#X connect 6 0 8 0;
#X connect 7 0 6 0;
#X connect 7 1 6 1;
#X connect 8 0 22 0;
#X connect 9 0 11 0;
#X connect 10 0 18 0;
#X connect 11 0 12 0;
#X connect 11 1 10 1;
#X connect 12 0 13 0;
#X connect 12 1 18 0;
#X connect 13 0 19 1;
#X connect 15 0 14 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 18 0 15 0;
#X connect 19 0 10 0;
#X connect 21 0 19 0;
#X connect 22 0 27 0;
#X connect 23 0 24 0;
#X connect 24 0 21 0;
#X connect 25 0 24 0;
#X connect 26 0 53 0;
#X connect 27 0 29 0;
#X connect 28 0 29 1;
#X connect 29 0 13 0;
#X connect 30 0 32 0;
#X connect 32 0 43 0;
#X connect 32 1 43 1;
#X connect 33 0 36 0;
#X connect 34 0 41 0;
#X connect 36 0 37 0;
#X connect 36 1 37 1;
#X connect 37 0 40 0;
#X connect 38 0 39 0;
#X connect 39 0 43 0;
#X connect 40 0 39 0;
#X connect 40 1 39 1;
#X connect 41 0 38 0;
#X connect 41 1 37 0;
#X connect 42 0 35 0;
#X connect 43 0 42 0;
#X connect 44 0 46 0;
#X connect 45 0 51 0;
#X connect 46 0 47 0;
#X connect 46 1 47 1;
#X connect 47 0 50 0;
#X connect 48 0 49 0;
#X connect 49 0 6 0;
#X connect 50 0 49 0;
#X connect 50 1 49 1;
#X connect 51 0 48 0;
#X connect 51 1 47 0;
#X connect 52 0 7 0;
#X restore 766 237 pd stuff;
#N canvas 689 58 674 604 init 0;
#X obj 191 30 loadbang;
#X obj 191 429 f \$0;
#X obj 218 102 pdcontrol;
#X obj 191 53 t b b;
#X msg 218 79 args 0;
#X obj 275 314 s \$0-max-grains;
#X obj 99 363 bng 18 250 50 0 empty empty empty 0 -9 0 10 #fcfcfc #000000 #000000;
#X obj 275 276 max 2;
#X msg 321 275 4;
#X msg 191 452 \; \$1-distance-set 25 \; \$1-sizer 100 \; \$1-delayr 50 \; \$1-env-typer 0 \; \$1-env-biasr 0.5 \; \$1-env-shaper 0.5 \; \$1-lopr 7000 \; \$1-hipr 50 \; \$1-gainr 0 \; \$1-drywetr 100 \;;
#X obj 218 248 unpack f f;
#X obj 321 154 list length;
#X obj 321 192 <= 1;
#X obj 218 125 t a a;
#X obj 321 215 sel 1;
#X obj 398 218 sel 1;
#X obj 398 195 == 0;
#X msg 398 308 no argument for max. delay time;
#X obj 398 332 print pp.grainrev~;
#X connect 0 0 3 0;
#X connect 1 0 9 0;
#X connect 2 0 13 0;
#X connect 3 0 1 0;
#X connect 3 1 4 0;
#X connect 4 0 2 0;
#X connect 6 0 1 0;
#X connect 7 0 5 0;
#X connect 8 0 5 0;
#X connect 10 1 7 0;
#X connect 11 0 12 0;
#X connect 11 0 16 0;
#X connect 12 0 14 0;
#X connect 13 0 10 0;
#X connect 13 1 11 0;
#X connect 14 0 8 0;
#X connect 15 0 17 0;
#X connect 16 0 15 0;
#X connect 17 0 18 0;
#X restore 766 173 pd init;
#X obj 664 216 inlet~;
#X obj 103 115 hsl 150 15 0 127 0 0 \$0-visbng \$0-visbngr empty 50 8 2 10 #e0e0e0 #e0e0e0 #000000 0 1;
#X obj 289 691 outlet~;
#X obj 663 693 outlet~;
#X obj 765 90 inlet;
#N canvas 280 281 1462 686 in 0;
#X obj 41 17 inlet;
#X obj 41 260 != 0;
#X obj 138 218 s \$0-delayr;
#X obj 171 310 s \$0-random-delayr;
#X obj 41 100 route int.grain-trigger grain-distance random-grain-distance delay random-delay grainsize random-grainsize pitch random-pitch panorama random-panorama;
#X obj 203 183 s \$0-sizer;
#X obj 235 229 s \$0-random-sizer;
#X obj 235 208 max 0;
#X obj 268 155 s \$0-pitchr;
#X obj 300 179 s \$0-random-pitchr;
#X obj 333 201 s \$0-panr;
#X obj 365 229 s \$0-random-panr;
#X obj 398 294 s \$0-ampr;
#X obj 434 316 s \$0-random-ampr;
#X obj 468 343 s \$0-feedbackr;
#X obj 683 395 s \$0-drywetr;
#X obj 923 437 s \$0-env-typer;
#X obj 1026 483 s \$0-env-biasr;
#X obj 974 533 s \$0-env-shaper;
#X obj 974 509 clip 0 1;
#X obj 1026 459 clip 0 1;
#X obj 41 285 s \$0-int_triggeronoffr;
#X obj 1234 487 s \$0-trigger;
#X obj 1077 422 symbol;
#X obj 1077 445 s \$0-env-set;
#N canvas 698 546 200 251 route 0;
#X obj 20 20 inlet;
#X obj 30 60 route save recall;
#X obj 30 85 route float;
#X obj 97 111 route float;
#X obj 30 136 s \$0-save;
#X obj 30 108 i;
#X obj 98 133 i;
#X obj 98 161 s \$0-recall;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 5 0;
#X connect 3 0 6 0;
#X connect 5 0 4 0;
#X connect 6 0 7 0;
#X restore 67 38 pd route save-recall;
#N canvas 362 125 450 479 recall 0;
#X obj 49 145 outlet;
#N canvas 3 54 450 600 listsplit 0;
#X obj 158 23 inlet;
#X obj 220 87 list length;
#X obj 220 113 until;
#X obj 182 150 f;
#X obj 278 150 + 1;
#X msg 265 111 0;
#X obj 182 226 list store;
#X msg 182 202 get \$1 1;
#X obj 154 367 list split;
#X obj 222 342 f;
#X obj 154 334 list;
#X obj 98 124 list;
#X obj 182 389 list split 1;
#X obj 154 274 t bang bang bang;
#X obj 182 179 t f f;
#X obj 158 48 t l l l b;
#X obj 154 473 outlet;
#X obj 154 440 list trim;
#X obj 163 248 sel |;
#X text 275 197 hacky split list at "|";
#X connect 0 0 15 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 14 0;
#X connect 4 0 3 1;
#X connect 5 0 3 1;
#X connect 6 0 18 0;
#X connect 7 0 6 0;
#X connect 8 0 17 0;
#X connect 8 1 12 0;
#X connect 9 0 8 1;
#X connect 10 0 8 0;
#X connect 11 0 15 0;
#X connect 12 1 11 0;
#X connect 13 0 10 0;
#X connect 13 1 9 0;
#X connect 13 2 2 1;
#X connect 14 0 7 0;
#X connect 14 1 9 1;
#X connect 15 0 1 0;
#X connect 15 1 10 1;
#X connect 15 2 6 1;
#X connect 15 3 5 0;
#X connect 17 0 16 0;
#X connect 18 0 13 0;
#X restore 49 117 pd listsplit;
#X obj 49 24 r \$0-recall;
#X obj 49 54 pipe 1;
#X obj 221 409 text fromlist \$0-savestates;
#X obj 49 77 text get \$0-savestates;
#X msg 253 246 21;
#X obj 253 269 until;
#X obj 253 292 f;
#X obj 300 295 + 1;
#X obj 253 315 t b f;
#X obj 253 367 text set \$0-savestates;
#X obj 221 114 text tolist \$0-savestates;
#X msg 253 342 list empty_slot;
#X obj 221 160 t a b;
#X obj 151 166 loadbang;
#X obj 221 137 savestate;
#X obj 221 33 text define \$0-savestates;
#X obj 151 189 del 0;
#X msg 298 199 0;
#X obj 253 220 spigot 1;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 5 0;
#X connect 5 0 1 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 8 0 10 0;
#X connect 9 0 8 1;
#X connect 10 0 13 0;
#X connect 10 1 11 1;
#X connect 12 0 16 0;
#X connect 13 0 11 0;
#X connect 14 0 4 0;
#X connect 14 1 19 0;
#X connect 15 0 18 0;
#X connect 16 0 14 0;
#X connect 16 1 12 0;
#X connect 18 0 20 0;
#X connect 19 0 20 1;
#X connect 20 0 6 0;
#X restore 134 75 pd recall;
#X obj 540 396 s \$0-hipr;
#X obj 647 360 s \$0-gainr;
#X obj 612 451 s \$0-random-pitch-feedr;
#X obj 576 426 s \$0-pitch-feedr;
#X obj 505 370 s \$0-lopr;
#X obj 1182 506 max 1;
#X obj 1182 529 s \$0-max-grains;
#X obj 923 378 route env-type env-shape env-bias set-env x-pan max-grains bang, f 61;
#X obj 398 257 route amplitude random-amplitude feedback lop hip pitch-feedback random-pitch-feedback gain dry/wet;
#X obj 1129 474 s \$0-x-panr;
#X obj 73 239 s \$0-distance-set;
#X obj 105 262 s \$0-random-distancer;
#X obj 692 302 route pan-feedback random-pan-feedback;
#X obj 795 329 s \$0-random-pan-feedr;
#X obj 692 326 s \$0-pan-feedr;
#X connect 0 0 4 0;
#X connect 0 0 25 0;
#X connect 1 0 21 0;
#X connect 4 0 1 0;
#X connect 4 1 37 0;
#X connect 4 2 38 0;
#X connect 4 3 2 0;
#X connect 4 4 3 0;
#X connect 4 5 5 0;
#X connect 4 6 7 0;
#X connect 4 7 8 0;
#X connect 4 8 9 0;
#X connect 4 9 10 0;
#X connect 4 10 11 0;
#X connect 4 11 35 0;
#X connect 7 0 6 0;
#X connect 19 0 18 0;
#X connect 20 0 17 0;
#X connect 23 0 24 0;
#X connect 26 0 4 0;
#X connect 32 0 33 0;
#X connect 34 0 16 0;
#X connect 34 1 19 0;
#X connect 34 2 20 0;
#X connect 34 3 23 0;
#X connect 34 4 36 0;
#X connect 34 5 32 0;
#X connect 34 6 22 0;
#X connect 35 0 12 0;
#X connect 35 1 13 0;
#X connect 35 2 14 0;
#X connect 35 3 31 0;
#X connect 35 4 27 0;
#X connect 35 5 30 0;
#X connect 35 6 29 0;
#X connect 35 7 28 0;
#X connect 35 8 15 0;
#X connect 35 9 39 0;
#X connect 39 0 41 0;
#X connect 39 1 40 0;
#X connect 39 2 34 0;
#X restore 765 113 pd in;
#N canvas 785 284 836 657 outlet-message 0;
#X obj 73 672 outlet;
#X obj 97 23 r \$0-int_triggeronoff;
#X obj 141 88 r \$0-delay;
#N canvas 3 54 1611 388 bang-once................................................... 0;
#X obj 145 81 t b f;
#X obj 103 81 t b f;
#X obj 60 177 del 0;
#X obj 60 81 t b f;
#X obj 188 81 t b f;
#X obj 232 81 t b f;
#X obj 274 81 t b f;
#X obj 60 35 inlet;
#X obj 103 34 inlet;
#X obj 145 34 inlet;
#X obj 188 34 inlet;
#X obj 232 35 inlet;
#X obj 275 35 inlet;
#X obj 436 326 outlet;
#X obj 60 211 f;
#X obj 321 82 t b f;
#X obj 322 36 inlet;
#X obj 368 80 t b f;
#X obj 369 34 inlet;
#X obj 419 81 t b f;
#X obj 463 81 t b f;
#X obj 505 81 t b f;
#X obj 419 34 inlet;
#X obj 463 35 inlet;
#X obj 506 35 inlet;
#X obj 551 80 t b f;
#X obj 595 80 t b f;
#X obj 637 80 t b f;
#X obj 551 34 inlet;
#X obj 595 35 inlet;
#X obj 638 35 inlet;
#X obj 680 82 t b f;
#X obj 681 36 inlet;
#X obj 726 81 t b f;
#X obj 770 81 t b f;
#X obj 812 81 t b f;
#X obj 726 35 inlet;
#X obj 770 36 inlet;
#X obj 813 36 inlet;
#X obj 859 82 t b f;
#X obj 860 36 inlet;
#X obj 905 81 t b f;
#X obj 949 81 t b f;
#X obj 991 81 t b f;
#X obj 905 35 inlet;
#X obj 949 36 inlet;
#X obj 992 36 inlet;
#X obj 1035 81 t b f;
#X obj 1036 36 inlet;
#X obj 1081 80 t b f;
#X obj 1082 35 inlet;
#X obj 1129 81 t b f;
#X obj 1130 36 inlet;
#X obj 1174 81 t b f;
#X obj 1175 36 inlet;
#X obj 436 301 pack 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
#X obj 1222 81 t b f;
#X obj 1223 36 inlet;
#X connect 0 0 2 0;
#X connect 0 1 55 2;
#X connect 1 0 2 0;
#X connect 1 1 55 1;
#X connect 2 0 14 0;
#X connect 3 0 2 0;
#X connect 3 1 14 1;
#X connect 4 0 2 0;
#X connect 4 1 55 3;
#X connect 5 0 2 0;
#X connect 5 1 55 4;
#X connect 6 0 2 0;
#X connect 6 1 55 5;
#X connect 7 0 3 0;
#X connect 8 0 1 0;
#X connect 9 0 0 0;
#X connect 10 0 4 0;
#X connect 11 0 5 0;
#X connect 12 0 6 0;
#X connect 14 0 55 0;
#X connect 15 0 2 0;
#X connect 15 1 55 6;
#X connect 16 0 15 0;
#X connect 17 0 2 0;
#X connect 17 1 55 7;
#X connect 18 0 17 0;
#X connect 19 0 2 0;
#X connect 19 1 55 8;
#X connect 20 0 2 0;
#X connect 20 1 55 9;
#X connect 21 0 2 0;
#X connect 21 1 55 10;
#X connect 22 0 19 0;
#X connect 23 0 20 0;
#X connect 24 0 21 0;
#X connect 25 0 2 0;
#X connect 25 1 55 11;
#X connect 26 0 2 0;
#X connect 26 1 55 12;
#X connect 27 0 2 0;
#X connect 27 1 55 13;
#X connect 28 0 25 0;
#X connect 29 0 26 0;
#X connect 30 0 27 0;
#X connect 31 0 2 0;
#X connect 31 1 55 14;
#X connect 32 0 31 0;
#X connect 33 0 2 0;
#X connect 33 1 55 15;
#X connect 34 0 2 0;
#X connect 34 1 55 16;
#X connect 35 0 2 0;
#X connect 35 1 55 17;
#X connect 36 0 33 0;
#X connect 37 0 34 0;
#X connect 38 0 35 0;
#X connect 39 0 2 0;
#X connect 39 1 55 18;
#X connect 40 0 39 0;