-
Notifications
You must be signed in to change notification settings - Fork 0
/
SonificationFinal.pd
2185 lines (2185 loc) · 77.6 KB
/
SonificationFinal.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 220 525 2234 1311 16;
#N canvas 1033 255 450 250 (subpatch) 0;
#X array Chn1 100 float 3;
#A 0 368.861 393.354 417.627 418.762 435.868 424.183 426.427 427.423
434.165 435.832 439.419 441.292 441.607 443.495 445.82 446.621 447.43
449.375 450.398 451.083 453.025 453.968 454.524 455.993 456.411 456.924
458.839 458.408 459.758 459.586 461.216 460.634 462.109 461.854 462.95
462.805 463.938 463.777 464.694 464.983 465.85 465.709 466.951 466.431
467.448 467.062 468.015 467.266 468.497 468.713 468.403 469.601 469.266
469.583 470.162 470.001 470.651 470.033 471.128 471.57 471.334 472.17
472.371 472.225 473.377 472.907 472.973 473.979 473.345 473.705 474.665
473.536 474.573 474.879 474.281 475.23 475.151 475.627 475.587 473.954
476.341 477.877 477.193 477.49 478.103 477.561 478.047 478.701 478.422
479.123 478.46 478.677 479.391 479.781 479.809 479.944 480.516 480.627
480.57 481.301;
#X coords 0 600 100 300 200 140 1 0 0;
#X restore 19 28 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array Chn2 100 float 3;
#A 0 437.472 453.636 456.412 471.276 466.332 461.094 461.013 459.214
464.84 465.917 466.409 467.218 466.95 467.601 467.669 468.206 468.473
469.079 469.686 469.555 470.656 471.116 471.072 471.906 472.002 471.678
473.136 472.833 473.536 472.959 474.182 473.474 474.264 473.777 474.692
474.069 474.884 474.126 475.257 474.829 475.543 475.225 475.995 475.354
475.736 475.895 476.449 475.552 476.269 476.021 475.874 476.59 476.138
476.729 476.626 476.579 476.823 476.446 476.862 476.833 476.825 477.377
477.11 477.042 477.862 477.26 477.34 478.037 477.409 477.917 477.972
477.432 478.186 477.863 477.576 478.375 477.794 478.228 477.926 476.343
478.255 479.756 478.782 479.379 479.041 478.631 479.322 479.502 479.316
479.855 479.272 479.602 480.016 480.011 479.777 479.814 480.171 480.339
480.17 480.597;
#X coords 0 600 100 300 200 140 1 0 0;
#X restore 18 188 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array Chn3 100 float 3;
#A 0 413.201 435.728 456.783 454.194 444.259 461.844 463.788 463.297
469.66 471.712 473.596 475.175 475.652 476.509 478.249 479.214 479.542
480.656 481.75 481.771 483.244 484.274 483.982 485.087 485.994 485.849
486.981 487.245 488.301 487.982 489.059 488.77 489.887 489.3 490.424
490.128 491.291 490.585 491.827 491.568 492.731 491.889 492.953 493.091
493.084 493.457 493.96 493.791 494.505 494.02 494.259 495.044 494.461
495.526 495.192 495.724 495.536 495.736 496.492 496.087 496.248 497.133
496.755 496.698 497.465 497.08 497.391 497.908 497.275 498.401 498.021
497.698 498.804 498.254 498.074 499.023 498.516 499.121 498.437 497.561
499.851 499.811 499.777 500.85 500.648 500.022 500.98 501.279 500.876
501.448 500.933 501.832 501.998 501.549 501.787 501.809 501.982 502.207
502.324 502.885;
#X coords 0 600 100 300 200 140 1 0 0;
#X restore 17 349 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array Chn4 100 float 3;
#A 0 406.07 418.664 443.676 434.795 446.23 438.559 438.615 419.529
447.278 443.725 449.95 454.266 455.864 458.358 456.943 462.381 467.696
478.944 470.986 475.255 470.401 468.01 459.82 465.684 468.745 462.723
475.016 467.077 468.418 475.496 470.55 473.891 482.153 468.61 461.806
473.432 466.579 467.46 455.637 467.578 469.281 468.287 470.514 460.845
463.79 470.605 458.564 454.73 466.762 458.096 464.192 478.167 477.333
491.842 488.002 478.298 471.56 474.247 474.023 479.402 463.923 465.369
461.981 455.13 476.655 484.175 492.855 492.936 502.333 497.125 497.742
503.196 503.359 508.178 521.011 509.708 496.82 501.943 500.323 492.739
490.145 493.453 487.895 494.529 485.54 503.28 500.497 486.953 496.724
495.779 492.429 498.431 497.614 489.255 491.341 496.022 503.949 493.69
504.844 513.696;
#X coords 0 600 100 300 200 140 1 0 0;
#X restore 17 509 graph;
#N canvas 1033 255 450 250 (subpatch) 0;
#X array Chn13 100 float 3;
#A 0 449.081 480.871 496.462 505.657 558.125 514.199 506.657 482.799
516.649 518.264 522.184 523.867 524.441 526.125 527.03 527.628 528.607
530.303 530.126 530.743 532.102 532.62 532.882 533.964 533.843 533.624
534.64 535.494 536.202 535.558 536.847 536.574 537.242 537.602 538.116
538.607 538.945 538.076 540.109 540.281 540.748 540.732 540.736 540.924
541.571 541.328 542.257 542.014 542.25 543.065 543.06 543.646 543.91
543.978 544.514 543.961 544.638 544.407 544.754 545.49 545.133 545.722
546.283 545.921 546.425 546.87 546.504 547.062 547.093 547.402 547.893
547.77 547.664 548.48 547.949 548.515 548.856 548.539 549.434 494.142
549.631 545.78 550.782 552.195 550.855 550.847 549.736 550.641 549.783
550.106 549.822 549.771 549.203 550.14 549.812 549.71 550.24 550.258
549.771 549.383;
#X coords 0 700 100 300 200 140 1 0 0;
#X restore 1092 22 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array Chn14 100 float 3;
#A 0 413.323 503.147 506.812 529.676 565.7 582.313 570.9 565.143 561.637
570.988 569.503 613.25 622.275 604.884 570.017 571.953 591.698 599.229
593.214 564.583 543.488 569.491 589.972 592.823 577.69 452.01 465.344
508.485 510.77 484.398 544.546 541.492 557.855 504.672 556.809 568.443
551.437 469.3 527.003 525.583 558.092 551.299 494.226 529.534 544.387
589.92 598.604 575.096 564.205 564.243 581.293 576.281 587.75 597.891
619.859 606.902 600.867 605.434 606.761 597.961 596.998 591.201 588.693
596.041 571.457 581.632 599.082 609.661 592.597 602.831 603.556 581.806
569.639 580.414 596.188 602.981 599.758 600.138 617.62 558.097 608.813
594.294 583.997 610.987 598.398 619.6 610.188 611.931 640.82 627.747
605.517 586.201 604.149 597.528 577.681 568.108 567.195 580.293 574.671
553.348;
#X coords 0 700 100 300 200 140 1 0 0;
#X restore 1091 182 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array Chn15 100 float 3;
#A 0 439.345 472.821 486.409 490.786 552.719 501.692 492.075 468.9
499.104 504.149 504.345 505.596 506.085 507.057 508.341 508.996 509.082
510.499 510.888 510.751 512.682 513.028 512.405 513.755 514.191 513.709
514.372 514.966 515.864 514.955 515.799 515.382 516.619 516.253 517.573
517.001 518.146 517.509 518.732 518.072 519.285 518.453 519.979 519.122
520.14 519.538 520.752 520.04 520.558 521.277 520.719 521.526 520.897
522.413 521.826 522.45 522.354 521.951 523.108 522.878 522.964 524.058
523.625 523.273 524.737 525.18 525.266 525.26 524.674 524.524 525.425
525.243 525.602 526.633 525.333 526.341 526.25 526.359 526.718 455.677
527.579 495.134 528.994 530.177 528.951 528.574 528.191 528.112 526.606
527.446 527.401 526.388 527.132 527.702 527.01 526.695 526.662 527.227
526.661 527.126;
#X coords 0 700 100 300 200 140 1 0 0;
#X restore 1090 343 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array Chn16 100 float 3;
#A 0 429.047 507.569 521.555 527.119 521.708 552.08 541.414 525.52
532.867 533.419 539.593 539.321 539.036 539.039 540.183 540.297 540.044
540.781 541.371 540.444 541.592 542.094 541.34 541.837 542.419 541.436
542.518 542.049 542.844 541.955 542.771 541.864 543.179 542.481 543.878
543.251 544.098 543.148 544.824 543.617 544.505 543.552 544.792 544.497
544.716 544.645 545.272 544.513 545.536 545.401 545.162 546.149 545.252
546.338 545.623 546.327 546.146 545.497 547.41 546.588 546.373 547.64
547.202 546.429 547.955 547.302 547.627 548.429 547.291 548.287 548.808
547.672 548.904 549.121 548.554 549.885 549.472 549.982 550.139 465.19
552.461 496.478 553.897 554.909 553.389 551.39 550.944 550.886 550.102
550.542 549.503 549.63 550.083 549.981 549.29 548.801 549.031 548.817
548.3 548.971;
#X coords 0 700 100 300 200 140 1 0 0;
#X restore 1090 503 graph;
#X obj 525 65 tgl 50 0 empty empty Start/Stop\\\ <The\\\ Clock> -20
-10 0 15 #00ff04 #000000 #000000 0 1;
#X obj 525 333 f;
#X obj 525 394 s basicClock;
#X obj 525 304 metro 100;
#X floatatom 582 362 5 0 0 0 - - - 0;
#X obj 588 333 + 1;
#X msg 525 262 0;
#X obj 924 153 tgl 20 0 empty empty empty 17 7 0 10 #e3c6ff #000000
#000000 0 1;
#X floatatom 951 173 5 0 0 0 - - - 0;
#X obj 924 203 s hold;
#X obj 525 162 ==;
#X obj 564 130 r hold;
#X obj 525 191 sel 1;
#N canvas 522 240 1500 994 readChn1 0;
#X obj 103 123 tabread Chn1-window;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#X obj 103 319 tabosc4~ tableChn1;
#N canvas 1295 -1370 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X obj 155 251 *~ 0.7;
#X msg 58 65 1 3 \, 0.5 5 10 \, 0 100 100;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X restore 64 368 pd ADSR;
#N canvas 1827 -1109 1100 880 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn1-window;
#X obj 311 287 >=;
#X obj 381 286 <=;
#X obj 372 243 r AlertRange1;
#X obj 505 244 r AlertRange2;
#X obj 404 410 s alert1;
#X floatatom 175 265 5 0 0 0 - - midinote_demst 0;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 0 14 1;
#X connect 2 0 4 0;
#X connect 3 0 2 1;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 5 0 26 0;
#X connect 6 0 7 0;
#X connect 7 0 8 1;
#X connect 8 0 11 0;
#X connect 9 0 8 0;
#X connect 9 1 0 0;
#X connect 9 1 12 0;
#X connect 10 0 9 0;
#X connect 12 0 20 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 21 0;
#X connect 15 0 22 0;
#X connect 16 0 17 0;
#X connect 17 0 19 0;
#X connect 17 0 25 0;
#X connect 18 0 17 0;
#X connect 20 0 13 0;
#X connect 21 0 16 0;
#X connect 22 0 18 0;
#X connect 23 0 21 1;
#X connect 24 0 22 1;
#X restore 356 586 pd readChn1;
#X obj 474 809 output~;
#N canvas 1893 -1414 1027 994 readChn2 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X obj 155 251 *~ 0.7;
#X msg 58 65 1 3 \, 0.5 5 10 \, 0 80 100;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X restore 64 368 pd ADSR;
#N canvas 1589 -1237 1100 880 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn2-window;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn2-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 372 243 r AlertRange1;
#X obj 505 244 r AlertRange2;
#X obj 311 287 >=;
#X obj 381 286 <=;
#X connect 0 0 1 0;
#X connect 0 0 13 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 20 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 11 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 19 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 23 0;
#X connect 14 0 24 0;
#X connect 15 0 16 0;
#X connect 16 0 18 0;
#X connect 17 0 16 0;
#X connect 19 0 12 0;
#X connect 20 0 6 1;
#X connect 21 0 23 1;
#X connect 22 0 24 1;
#X connect 23 0 15 0;
#X connect 24 0 17 0;
#X restore 356 621 pd readChn2;
#N canvas 1278 -1415 1027 994 readChn3 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X obj 155 251 *~ 0.7;
#X msg 58 65 1 3 \, 0.5 5 10 \, 0 80 100;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X restore 64 368 pd ADSR;
#N canvas 1589 -1237 1100 880 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn3-window;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn3-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 372 243 r AlertRange1;
#X obj 505 244 r AlertRange2;
#X obj 381 286 <=;
#X obj 311 287 >=;
#X connect 0 0 1 0;
#X connect 0 0 13 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 20 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 11 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 19 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 23 0;
#X connect 14 0 24 0;
#X connect 15 0 16 0;
#X connect 16 0 18 0;
#X connect 17 0 16 0;
#X connect 19 0 12 0;
#X connect 20 0 6 1;
#X connect 21 0 24 1;
#X connect 22 0 23 1;
#X connect 23 0 17 0;
#X connect 24 0 15 0;
#X restore 357 655 pd readChn3;
#N canvas 1893 -1414 1027 994 readChn4 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X msg 58 65 1 10 \, 0.7 5 10 \, 0 100 100;
#X obj 155 251 *~ 0.7;
#X connect 0 0 5 0;
#X connect 1 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 3 1;
#X connect 5 0 4 0;
#X connect 6 0 2 0;
#X restore 64 368 pd ADSR;
#N canvas 1589 -1237 1100 880 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn4-window;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn4-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 372 243 r AlertRange1;
#X obj 505 244 r AlertRange2;
#X obj 381 286 <=;
#X obj 311 287 >=;
#X connect 0 0 1 0;
#X connect 0 0 13 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 20 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 11 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 19 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 23 0;
#X connect 14 0 24 0;
#X connect 15 0 16 0;
#X connect 16 0 18 0;
#X connect 17 0 16 0;
#X connect 19 0 12 0;
#X connect 20 0 6 1;
#X connect 21 0 24 1;
#X connect 22 0 23 1;
#X connect 23 0 17 0;
#X connect 24 0 15 0;
#X restore 358 690 pd readChn4;
#N canvas -79 241 2564 1183 CueSamplesPlayer 0;
#X obj 447 26 r triggerCue1;
#X obj 655 19 r triggerCue2;
#X obj 863 21 r triggerCue3;
#X obj 1085 15 r triggerCue4;
#N canvas 828 -1392 450 250 (subpatch) 0;
#X array CueSample-1 29077 float 2;
#X coords 0 1 29077 -1 200 140 1;
#X restore 24 24 graph;
#N canvas 790 -1430 450 250 (subpatch) 0;
#X array CueSample-2 29077 float 2;
#X coords 0 1 29077 -1 200 140 1;
#X restore 234 24 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array CueSample-3 29077 float 2;
#X coords 0 1 29077 -1 200 140 1;
#X restore 24 201 graph;
#N canvas 0 50 450 250 (subpatch) 0;
#X array CueSample-4 29077 float 2;
#X coords 0 1 29077 -1 200 140 1 0 0;
#X restore 234 201 graph;
#X obj 46 370 loadbang;
#X obj 46 551 soundfiler;
#X obj 447 84 line~;
#X obj 447 113 tabread4~ CueSample-1;
#X obj 784 339 *~;
#X msg 810 276 1;
#X obj 810 305 line~;
#X obj 784 368 hip~ 5;
#X obj 784 491 outlet~;
#X obj 656 84 line~;
#X obj 656 113 tabread4~ CueSample-2;
#X obj 864 84 line~;
#X obj 1085 81 line~;
#X obj 864 113 tabread4~ CueSample-3;
#X obj 1085 110 tabread4~ CueSample-4;
#X obj 907 562;
#X msg 46 407 read -resize ./audio_samples/CueSample-ONE.wav CueSample-1
\;;
#X msg 65 436 read -resize ./audio_samples/CueSample-TWO.wav CueSample-2
\;;
#X msg 84 465 read -resize ./audio_samples/CueSample-THREE.wav CueSample-3
\;, f 62;
#X msg 103 494 read -resize ./audio_samples/CueSample-FOUR.wav CueSample-4
\;, f 61;
#X msg 446 54 1 \, 4.41e+08 1e+07;
#X msg 655 54 1 \, 4.41e+08 1e+07;
#X msg 863 54 1 \, 4.41e+08 1e+07;
#X msg 1084 51 1 \, 4.41e+08 1e+07;
#X connect 0 0 13 0;
#X connect 0 0 28 0;
#X connect 1 0 29 0;
#X connect 1 0 13 0;
#X connect 2 0 30 0;
#X connect 2 0 13 0;
#X connect 3 0 31 0;
#X connect 3 0 13 0;
#X connect 8 0 24 0;
#X connect 8 0 25 0;
#X connect 8 0 26 0;
#X connect 8 0 27 0;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 15 0;
#X connect 13 0 14 0;
#X connect 14 0 12 1;
#X connect 15 0 16 0;
#X connect 17 0 18 0;
#X connect 18 0 12 0;
#X connect 19 0 21 0;
#X connect 20 0 22 0;
#X connect 21 0 12 0;
#X connect 22 0 12 0;
#X connect 24 0 9 0;
#X connect 25 0 9 0;
#X connect 26 0 9 0;
#X connect 27 0 9 0;
#X connect 28 0 10 0;
#X connect 29 0 17 0;
#X connect 30 0 19 0;
#X connect 31 0 20 0;
#X restore 617 774 pd CueSamplesPlayer;
#X obj 617 812 output~;
#X msg 903 279 0.6 0.7 0.6;
#X obj 474 777 freeverb~;
#X obj 809 631 loadbang;
#X msg 809 689 wet \$1;
#X obj 900 632 loadbang;
#X msg 900 690 dry \$1;
#X obj 989 632 loadbang;
#X msg 989 690 roomsize \$1;
#N canvas 841 248 1186 994 readChn13 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X obj 155 251 *~ 0.7;
#X msg 58 65 1 3 \, 0.5 5 10 \, 0 80 100;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X restore 64 368 pd ADSR;
#N canvas 262 579 1884 880 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X text 176 108 IOI=600/4;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn13-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 321 142 tabread Chn13-window;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 357 sel 1;
#X obj 311 401 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 311 421 s alert;
#X obj 394 276 r AlertRange1;
#X obj 311 322 >=;
#X obj 311 287 abs;
#X connect 0 0 1 0;
#X connect 0 0 15 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 12 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 6 1;
#X connect 12 0 14 0;
#X connect 13 0 15 0;
#X connect 14 0 13 0;
#X connect 15 0 16 0;
#X connect 16 0 22 0;
#X connect 17 0 18 0;
#X connect 18 0 19 0;
#X connect 20 0 21 1;
#X connect 21 0 17 0;
#X connect 22 0 21 0;
#X restore 655 595 pd readChn13;
#N canvas 826 -1379 2438 1376 readChn14 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X msg 58 65 1 10 \, 0.7 5 10 \, 0 100 100;
#X obj 155 251 *~ 0.7;
#X connect 0 0 5 0;
#X connect 1 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 3 1;
#X connect 5 0 4 0;
#X connect 6 0 2 0;
#X restore 64 368 pd ADSR;
#N canvas 1589 -1237 2438 1376 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X text 176 108 IOI=600/4;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn14-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn14-window;
#X obj 360 232 r AlertRange1;
#X obj 493 233 r AlertRange2;
#X obj 381 285 <=;
#X obj 311 287 >=;
#X connect 0 0 1 0;
#X connect 0 0 14 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 12 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 6 1;
#X connect 12 0 20 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 24 0;
#X connect 15 0 23 0;
#X connect 16 0 17 0;
#X connect 17 0 19 0;
#X connect 18 0 17 0;
#X connect 20 0 13 0;
#X connect 21 0 24 1;
#X connect 22 0 23 1;
#X connect 23 0 18 0;
#X connect 24 0 16 0;
#X restore 655 625 pd readChn14;
#N canvas 727 -1482 2438 1376 readChn15 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X msg 58 65 1 10 \, 0.7 5 10 \, 0 100 100;
#X obj 155 251 *~ 0.7;
#X connect 0 0 5 0;
#X connect 1 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 3 1;
#X connect 5 0 4 0;
#X connect 6 0 2 0;
#X restore 64 368 pd ADSR;
#N canvas 1589 -1237 2438 1376 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X text 176 108 IOI=600/4;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn15-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn15-window;
#X obj 372 243 r AlertRange1;
#X obj 505 244 r AlertRange2;
#X obj 381 286 <=;
#X obj 311 287 >=;
#X connect 0 0 1 0;
#X connect 0 0 14 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 12 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 6 1;
#X connect 12 0 20 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 23 0;
#X connect 15 0 24 0;
#X connect 16 0 17 0;
#X connect 17 0 19 0;
#X connect 18 0 17 0;
#X connect 20 0 13 0;
#X connect 21 0 24 1;
#X connect 22 0 23 1;
#X connect 23 0 18 0;
#X connect 24 0 16 0;
#X restore 656 656 pd readChn15;
#N canvas 1893 -1414 2438 1376 readChn16 0;
#X floatatom 103 152 5 0 0 0 - - - 0;
#X obj 103 204 div;
#X obj 137 178 r rangeForNote;
#X floatatom 103 233 5 0 0 0 - - - 0;
#X obj 103 261 + 44;
#X obj 103 290 mtof;
#N canvas 1809 -1086 1072 776 ADSR 0;
#X obj 58 36 inlet;
#X obj 154 28 inlet~;
#X obj 155 291 outlet~;
#X obj 155 222 *~;
#X obj 58 166 vline~;
#X obj 155 251 *~ 0.7;
#X msg 58 65 1 3 \, 0.5 5 10 \, 0 80 100;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X restore 64 368 pd ADSR;
#N canvas 1589 -1237 2438 1376 readWindow 0;
#X floatatom 43 166 5 0 0 0 - - - 0;
#X obj 43 137 line 0 4;
#X obj 43 194 div 1;
#X obj 43 223 change;
#X floatatom 82 252 5 0 0 0 - - - 0;
#X text 126 171 Which index to read from the window sequence:;
#X obj 43 256 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000
#000000;
#X obj 42 35 inlet;
#X obj 43 314 outlet;
#X obj 82 280 outlet;
#X msg 43 108 0 \, 4 600 1;
#X text 176 108 IOI=600/4;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 10 0 1 0;
#X restore 64 81 pd readWindow;
#X obj 64 46 inlet;
#X obj 64 397 outlet~;
#X obj 103 123 tabread Chn16-window;
#X obj 103 319 tabosc4~ tableChn1;
#X obj 321 109 - 1;
#X floatatom 321 171 5 0 0 0 - - - 0;
#X obj 311 230 -;
#X floatatom 311 259 5 0 0 0 - - - 0;
#X obj 311 345 sel 1;
#X obj 311 389 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 381 346 sel 1;
#X obj 311 409 s alert;
#X obj 321 142 tabread Chn16-window;
#X obj 372 243 r AlertRange1;
#X obj 505 244 r AlertRange2;
#X obj 381 286 <=;
#X obj 311 287 >=;
#X connect 0 0 1 0;
#X connect 0 0 14 1;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 6 0 9 0;
#X connect 7 0 6 0;
#X connect 7 1 10 0;
#X connect 7 1 12 0;
#X connect 8 0 7 0;
#X connect 10 0 0 0;
#X connect 11 0 6 1;
#X connect 12 0 20 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 23 0;
#X connect 15 0 24 0;
#X connect 16 0 17 0;
#X connect 17 0 19 0;
#X connect 18 0 17 0;
#X connect 20 0 13 0;
#X connect 21 0 24 1;
#X connect 22 0 23 1;
#X connect 23 0 18 0;
#X connect 24 0 16 0;
#X restore 657 686 pd readChn16;
#X msg 900 661 0.7;
#X msg 989 661 0.6;
#X msg 809 660 0.3;
#N canvas -556 363 2438 1376 Alert 0;
#N canvas 304 304 450 250 (subpatch) 0;
#X array AlertGranularSample 1232 float 2;
#X coords 0 1 1232 -1 200 140 1;
#X restore 30 23 graph;
#X obj 273 16 r alert;
#X obj 451 9 loadbang;
#X obj 451 69 soundfiler;
#X obj 82 302 *~;
#X obj 379 273 vline~;
#X obj 377 222 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
#000000 #000000;
#X obj 82 384 outlet~;
#X text 416 191 envelope: attack and release time;
#X obj 82 249 tabplay~ AlertGranularSample;
#X msg 451 40 read -resize alert.wav AlertGranularSample \;;
#X obj 82 331 hip~ 200;
#X msg 377 242 1 10 \, 0 50 100;
#X msg 273 45 500 500;
#X obj 549 461 s AlertRange2;
#X obj 406 462 s AlertRange1;
#X obj 406 402 loadbang;
#X obj 549 400 loadbang;
#X msg 406 433 10;
#X msg 549 433 -10;
#X text 274 88 starting at 500 in array \, play 500 samples;
#X connect 1 0 13 0;
#X connect 2 0 10 0;
#X connect 4 0 11 0;
#X connect 5 0 4 1;