aboutsummaryrefslogtreecommitdiff
path: root/instruments
diff options
context:
space:
mode:
Diffstat (limited to 'instruments')
-rw-r--r--instruments/MA_FM.pd1249
-rw-r--r--instruments/adsr-engine.pd16
-rw-r--r--instruments/analogue-engine.pd25
-rw-r--r--instruments/analogue.pd48
-rw-r--r--instruments/analosc.pd101
-rw-r--r--instruments/d-drumcenter.pd232
-rw-r--r--instruments/example.pd153
-rw-r--r--instruments/madsr.pd70
-rw-r--r--instruments/mafm/MA_FM.pd1249
-rw-r--r--instruments/mafm/dollars.txt152
-rw-r--r--instruments/mafm/mafm.dat80
-rw-r--r--instruments/mafm/tester.pd43
-rw-r--r--instruments/mgadsr.pd83
-rw-r--r--instruments/netcontrol.pd33
-rw-r--r--instruments/polyengines.pd130
-rw-r--r--instruments/rrad.angriff~.pd431
-rw-r--r--instruments/rrad.fluid~.pd150
-rw-r--r--instruments/rrad.minipli-xsample.pd116
-rw-r--r--instruments/rrad.minipli.pd231
-rw-r--r--instruments/rrad.square~.pd105
-rw-r--r--instruments/settings.dat55
-rw-r--r--instruments/speakerboxx.pd193
-rw-r--r--instruments/speakerboxx/ezdac~.pd37
-rw-r--r--instruments/speakerboxx/gpans~.pd29
-rwxr-xr-xinstruments/speakerboxx/ratts.pd_linuxbin0 -> 149922 bytes
-rw-r--r--instruments/speakerboxx/speaker.dat92
-rw-r--r--instruments/speakerboxx/speakerboxx.pd191
-rw-r--r--instruments/speakerboxx/usespeaker.pd99
-rw-r--r--instruments/user.pd130
29 files changed, 5523 insertions, 0 deletions
diff --git a/instruments/MA_FM.pd b/instruments/MA_FM.pd
new file mode 100644
index 0000000..4d861fd
--- /dev/null
+++ b/instruments/MA_FM.pd
@@ -0,0 +1,1249 @@
+#N canvas 726 332 249 426 10;
+#X obj 13 239 vsl 15 128 0 1000 0 0 \$0-rAtt_1 \$0-sAtt_1 A 0 -8 1728
+8 -262144 -1 -1 4400 1;
+#X obj 31 239 vsl 15 128 0 1000 0 0 \$0-rRel_1 \$0-sRel_1 R 0 -8 1728
+8 -262144 -1 -1 10500 1;
+#X obj 72 241 vsl 15 128 0 1000 0 0 \$0-rAtt_2 \$0-sAtt_2 A 0 -8 1728
+8 -262144 -1 -1 5600 1;
+#X obj 90 241 vsl 15 128 0 1000 0 0 \$0-rRel_2 \$0-sRel_2 R 0 -8 1728
+8 -262144 -1 -1 600 1;
+#X obj 133 240 vsl 15 128 0 1000 0 0 \$0-rAtt_3 \$0-sAtt_3 A 0 -8 1728
+8 -262144 -1 -1 900 1;
+#X obj 151 240 vsl 15 128 0 1000 0 0 \$0-rRel_3 \$0-sRel_3 R 0 -8 1728
+8 -262144 -1 -1 6800 1;
+#X obj 430 158 s \$0-NoteVel;
+#X obj 415 179 s \$0-NotePitch;
+#X obj 446 137 s \$0-NoteChnl;
+#N canvas 0 0 1054 904 FM_Feedback 0;
+#X obj 181 178 line~;
+#X obj 181 152 pack 0 50;
+#X obj 181 126 / 100;
+#X obj 165 202 *~;
+#X obj 357 177 line~;
+#X obj 357 151 pack 0 50;
+#X obj 357 125 / 100;
+#X obj 341 201 *~;
+#X obj 532 175 line~;
+#X obj 532 149 pack 0 50;
+#X obj 532 123 / 100;
+#X obj 516 199 *~;
+#X obj 165 225 throw~ In_op1;
+#X obj 341 226 throw~ In_op1;
+#X obj 517 225 throw~ In_op1;
+#X obj 110 153 r~ \$0-Out_Op1;
+#X obj 278 134 r~ \$0-Out_Op2;
+#X obj 465 150 r~ \$0-Out_Op3;
+#X obj 110 183 z~ 1;
+#X obj 296 178 z~ 1;
+#X obj 466 176 z~ 1;
+#X obj 165 330 line~;
+#X obj 165 304 pack 0 50;
+#X obj 165 278 / 100;
+#X obj 149 354 *~;
+#X obj 341 329 line~;
+#X obj 341 303 pack 0 50;
+#X obj 341 277 / 100;
+#X obj 325 353 *~;
+#X obj 516 327 line~;
+#X obj 516 301 pack 0 50;
+#X obj 516 275 / 100;
+#X obj 500 351 *~;
+#X obj 94 305 r~ \$0-Out_Op1;
+#X obj 262 286 r~ \$0-Out_Op2;
+#X obj 449 302 r~ \$0-Out_Op3;
+#X obj 94 335 z~ 1;
+#X obj 280 330 z~ 1;
+#X obj 450 328 z~ 1;
+#X obj 152 496 line~;
+#X obj 152 470 pack 0 50;
+#X obj 152 444 / 100;
+#X obj 136 520 *~;
+#X obj 328 495 line~;
+#X obj 328 469 pack 0 50;
+#X obj 328 443 / 100;
+#X obj 312 519 *~;
+#X obj 503 493 line~;
+#X obj 503 467 pack 0 50;
+#X obj 503 441 / 100;
+#X obj 487 517 *~;
+#X obj 79 451 r~ \$0-Out_Op1;
+#X obj 249 452 r~ \$0-Out_Op2;
+#X obj 436 468 r~ \$0-Out_Op3;
+#X obj 267 496 z~ 1;
+#X obj 437 494 z~ 1;
+#X obj 136 543 throw~ In_op3;
+#X obj 311 540 throw~ In_op3;
+#X obj 488 543 throw~ In_op3;
+#X obj 149 377 throw~ In_op2;
+#X obj 325 378 throw~ In_op2;
+#X obj 503 377 throw~ In_op2;
+#X obj 79 477 z~ 1;
+#X obj 152 422 r \$0-op1->op3;
+#X obj 328 419 r \$0-op2->op3;
+#X obj 503 417 r \$0-op3->op3;
+#X obj 165 256 r \$0-op1->op2;
+#X obj 341 253 r \$0-op2->op2;
+#X obj 516 251 r \$0-op3->op2;
+#X obj 181 106 r \$0-op1->op1;
+#X obj 357 103 r \$0-op2->op1;
+#X obj 532 101 r \$0-op3->op1;
+#X connect 0 0 3 1;
+#X connect 1 0 0 0;
+#X connect 2 0 1 0;
+#X connect 3 0 12 0;
+#X connect 4 0 7 1;
+#X connect 5 0 4 0;
+#X connect 6 0 5 0;
+#X connect 7 0 13 0;
+#X connect 8 0 11 1;
+#X connect 9 0 8 0;
+#X connect 10 0 9 0;
+#X connect 11 0 14 0;
+#X connect 15 0 18 0;
+#X connect 16 0 19 0;
+#X connect 17 0 20 0;
+#X connect 18 0 3 0;
+#X connect 19 0 7 0;
+#X connect 20 0 11 0;
+#X connect 21 0 24 1;
+#X connect 22 0 21 0;
+#X connect 23 0 22 0;
+#X connect 24 0 59 0;
+#X connect 25 0 28 1;
+#X connect 26 0 25 0;
+#X connect 27 0 26 0;
+#X connect 28 0 60 0;
+#X connect 29 0 32 1;
+#X connect 30 0 29 0;
+#X connect 31 0 30 0;
+#X connect 32 0 61 0;
+#X connect 33 0 36 0;
+#X connect 34 0 37 0;
+#X connect 35 0 38 0;
+#X connect 36 0 24 0;
+#X connect 37 0 28 0;
+#X connect 38 0 32 0;
+#X connect 39 0 42 1;
+#X connect 40 0 39 0;
+#X connect 41 0 40 0;
+#X connect 42 0 56 0;
+#X connect 43 0 46 1;
+#X connect 44 0 43 0;
+#X connect 45 0 44 0;
+#X connect 46 0 57 0;
+#X connect 47 0 50 1;
+#X connect 48 0 47 0;
+#X connect 49 0 48 0;
+#X connect 50 0 58 0;
+#X connect 51 0 62 0;
+#X connect 52 0 54 0;
+#X connect 53 0 55 0;
+#X connect 54 0 46 0;
+#X connect 55 0 50 0;
+#X connect 62 0 42 0;
+#X connect 63 0 41 0;
+#X connect 64 0 45 0;
+#X connect 65 0 49 0;
+#X connect 66 0 23 0;
+#X connect 67 0 27 0;
+#X connect 68 0 31 0;
+#X connect 69 0 2 0;
+#X connect 70 0 6 0;
+#X connect 71 0 10 0;
+#X coords 0 0 0.000952381 0.00111111 120 20 0;
+#X restore 739 301 pd FM_Feedback;
+#X obj 414 219 catch~ \$0-out;
+#X obj 0 19 cnv 30 244 180 empty empty empty 20 12 0 14 -166441 -66577
+0;
+#X obj 136 178 cnv 10 40 1 \$0-r_Op1OutCanvash \$0-s_Op1OutCanvash
+empty 20 12 1728 14 -33289 -262144 0;
+#X obj 120 172 cnv 12 38 16 empty \$0-s_Op1OutCanvash empty 4 6 576
+8 -33289 -262144 0;
+#X obj 121 173 nbx 3 14 0 100 0 0 \$0-outAmt_1 \$0-send-outAmt_1 empty
+0 -6 1728 10 -166441 -1 -1 31 256;
+#X obj 78 130 cnv 15 1 50 \$0-r_Op2OutCanvas \$0-s_Op2OutCanvas empty
+20 12 1728 14 -33289 -262144 0;
+#X obj 80 178 cnv 10 40 1 \$0-r_Op2OutCanvash \$0-s_Op2OutCanvash empty
+20 12 1728 14 -33289 -262144 0;
+#X obj 68 172 cnv 12 38 16 empty \$0-s_Op2OutCanvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 69 173 nbx 3 14 0 100 0 0 \$0-outAmt_2 \$0-send-outAmt_2 empty
+0 -6 1728 10 -166441 -1 -1 84 256;
+#X obj 28 178 cnv 10 40 1 \$0-r_Op3OutCanvash \$0-s_Op3OutCanvash empty
+20 12 1728 14 -166441 -262144 0;
+#X obj 25 30 cnv 12 40 22 empty \$0-s_Op3FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 27 32 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+0;
+#X obj 13 22 cnv 12 34 16 empty \$0-s_Op3FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 14 23 nbx 3 14 0 100 0 0 \$0-op3->op3 \$0-send-op3->op3 empty
+0 -6 1728 8 -166441 -1 -1 0 256;
+#X obj 25 42 cnv 15 1 50 \$0-r_Op3Op2 \$0-s_Op3Op2 empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 177 171 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 179 173 cnv 12 38 14 empty empty Out 10 7 0 8 -195568 -66577
+0;
+#X obj 25 130 cnv 15 1 50 \$0-r_Op3OutCanvas \$0-s_Op3OutCanvas empty
+20 12 1728 14 -166441 -262144 0;
+#X obj 16 172 cnv 12 38 16 empty \$0-s_Op3OutCanvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 17 173 nbx 3 14 0 100 0 0 \$0-outAmt_3 \$0-send-outAmt_3 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 26 87 cnv 10 40 1 \$0-r_Op3Op2h \$0-s_Op3Op2h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 28 135 cnv 10 40 1 \$0-r_Op3Op1h \$0-s_Op3Op1h empty 20 12 1728
+14 -166441 -262144 0;
+#X obj 25 82 cnv 15 1 50 \$0-r_Op3Op2_2 \$0-s_Op3Op2_2 empty 20 12
+1728 14 -166441 -262144 0;
+#X obj 15 81 cnv 12 38 16 empty \$0-s_Op3Op2Canvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 16 82 nbx 3 14 0 100 0 0 \$0-op3->op2 \$0-send-op3->op2 empty
+0 -6 1728 10 -166441 -1 -1 87 256;
+#X obj 15 129 cnv 12 38 16 empty \$0-s_Op3Op1Canvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 16 130 nbx 3 14 0 100 0 0 \$0-op3->op1 \$0-send-op3->op1 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 88 135 cnv 10 30 1 \$0-r_Op2Op1h \$0-s_Op2Op1h empty 20 12 1728
+14 -166441 -262144 0;
+#X obj 68 129 cnv 12 38 16 empty \$0-s_Op2Op1Canvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 69 130 nbx 3 14 0 100 0 0 \$0-op2->op1 \$0-send-op2->op1 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 131 81 cnv 15 1 50 \$0-r_Op1Op2 \$0-s_Op1Op2 empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 120 81 cnv 12 38 16 empty \$0-s_Op1Op2Canvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 121 82 nbx 3 14 0 100 0 0 \$0-op1->op2 \$0-send-op1->op2 empty
+0 -6 1728 10 -166441 -1 -1 12 256;
+#X obj 131 131 cnv 15 1 40 \$0-r_Op1OutCanvas \$0-s_Op1OutCanvas empty
+20 12 1728 14 -33289 -262144 0;
+#X obj 131 118 cnv 12 40 22 empty \$0-s_Op1FBCanvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 133 120 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+0;
+#X obj 119 128 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 121 130 cnv 12 38 14 empty empty Op_1 4 6 0 8 -233017 -66577
+0;
+#X obj 119 110 cnv 12 34 16 empty \$0-s_Op1FBCanvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 120 111 nbx 3 14 0 100 0 0 \$0-op1->op1 \$0-send-op1->op1 empty
+0 -6 1728 8 -166441 -1 -1 15 256;
+#X obj 78 70 cnv 12 40 22 empty \$0-s_Op2FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 80 72 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+0;
+#X obj 66 62 cnv 12 34 16 empty \$0-s_Op2FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 67 63 nbx 3 14 0 100 0 0 \$0-op2->op2 \$0-send-op2->op2 empty
+0 -6 1728 8 -166441 -1 -1 0 256;
+#X obj 78 82 cnv 15 1 46 \$0-r_Op2Op1 \$0-s_Op2Op1 empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 90 88 cnv 10 30 1 \$0-r_Op1Op2h \$0-s_Op1Op2h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 66 80 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 68 82 cnv 12 38 14 empty empty Op_2 4 6 0 8 -233017 -66577 0
+;
+#X obj 121 37 cnv 12 38 16 empty \$0-s_Op1Op3Canvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 131 38 cnv 15 1 42 \$0-r_Op1Op3_1 \$0-s_Op1Op3_1 empty 20 12
+1728 14 -33289 -262144 0;
+#X obj 122 38 nbx 3 14 0 100 0 0 \$0-op1->op3 \$0-send-op1->op3 empty
+0 -6 1728 10 -166441 -1 -1 7 256;
+#X obj 36 42 cnv 10 32 1 \$0-r_Op2Op3h \$0-s_Op2Op3h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 90 42 cnv 10 30 1 \$0-r_Op1Op3h \$0-s_Op1Op3h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 68 37 cnv 12 38 16 empty \$0-s_Op2Op3Canvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 78 37 cnv 15 1 24 \$0-r_Op2Op3 \$0-s_Op2Op3 empty 20 12 1728
+14 -166441 -262144 0;
+#X obj 69 38 nbx 3 14 0 100 0 0 \$0-op2->op3 \$0-send-op2->op3 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 12 40 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 14 42 cnv 12 38 14 empty empty Op_3 4 6 0 8 -233017 -66577 0
+;
+#X obj 178 148 bng 15 250 50 0 \$0-r_RsFB \$0-s_RsFB Reset 0 -6 1728
+8 -262144 -1 -1;
+#N canvas 536 352 858 576 feedbacksReset 0;
+#X obj 215 122 s \$0-send-op1->op1;
+#X obj 327 122 s \$0-send-op2->op1;
+#X obj 440 123 s \$0-send-op3->op1;
+#X obj 224 187 s \$0-send-op3->op3;
+#X obj 336 188 s \$0-send-op3->op2;
+#X obj 210 260 s \$0-send-op1->op3;
+#X obj 322 261 s \$0-send-op2->op2;
+#X obj 439 263 s \$0-send-op1->op2;
+#X obj 556 264 s \$0-send-op2->op3;
+#X obj 197 320 s \$0-send-outAmt_1;
+#X obj 197 349 s \$0-send-outAmt_2;
+#X obj 207 388 s \$0-send-outAmt_3;
+#X obj 421 48 r \$0-r_RsFB;
+#X msg 420 69 0;
+#X connect 12 0 13 0;
+#X connect 13 0 0 0;
+#X connect 13 0 1 0;
+#X connect 13 0 2 0;
+#X connect 13 0 4 0;
+#X connect 13 0 3 0;
+#X connect 13 0 5 0;
+#X connect 13 0 6 0;
+#X connect 13 0 7 0;
+#X connect 13 0 8 0;
+#X connect 13 0 9 0;
+#X connect 13 0 10 0;
+#X connect 13 0 11 0;
+#X restore 739 280 pd feedbacksReset;
+#N canvas 0 0 1267 910 feedback_Matrix_GUI 0;
+#X obj 30 38 moses 1;
+#X msg 30 69 color 1 0;
+#X msg 101 67 color 12 0;
+#X obj 30 97 s \$0-s_Op1FBCanvas;
+#X obj 30 9 r \$0-op1->op1;
+#X obj 173 36 moses 1;
+#X msg 173 67 color 1 0;
+#X msg 244 65 color 12 0;
+#X obj 173 6 r \$0-op2->op2;
+#X obj 173 95 s \$0-s_Op2FBCanvas;
+#X obj 314 34 moses 1;
+#X msg 314 65 color 1 0;
+#X msg 385 63 color 12 0;
+#X obj 314 4 r \$0-op3->op3;
+#X obj 314 93 s \$0-s_Op3FBCanvas;
+#X obj 727 102 s \$0-s_Op1OutCanvas;
+#X obj 607 102 s \$0-s_Op2OutCanvas;
+#X obj 476 102 s \$0-s_Op3OutCanvas;
+#X obj 476 6 r \$0-outAmt_3;
+#X obj 607 6 r \$0-outAmt_2;
+#X obj 727 5 r \$0-outAmt_1;
+#X msg 644 81 color 12 0;
+#X msg 607 59 color 1 0;
+#X obj 607 30 moses 1;
+#X msg 764 80 color 12 0;
+#X msg 727 58 color 1 0;
+#X obj 727 29 moses 1;
+#X msg 513 81 color 12 0;
+#X msg 476 59 color 1 0;
+#X obj 476 30 moses 1;
+#X msg 73 448 color 12 0;
+#X obj 315 526 s \$0-s_Op1OutCanvash;
+#X obj 78 201 r \$0-outAmt_3;
+#X obj 78 225 >= 1;
+#X obj 73 290 spigot;
+#X obj 78 260 t b f;
+#X obj 204 549 s \$0-s_Op2OutCanvash;
+#X obj 73 576 s \$0-s_Op3OutCanvash;
+#X msg 204 448 color 12 0;
+#X obj 209 225 >= 1;
+#X obj 204 290 spigot;
+#X obj 209 260 t b f;
+#X obj 209 201 r \$0-outAmt_2;
+#X msg 315 447 color 12 0;
+#X obj 320 224 >= 1;
+#X obj 315 289 spigot;
+#X obj 320 259 t b f;
+#X obj 320 200 r \$0-outAmt_1;
+#X obj 17 286 == 0;
+#X obj 17 388 spigot;
+#X obj 17 360 t b f;
+#X msg 17 411 color 1 0;
+#X obj 143 316 == 0;
+#X obj 143 363 spigot;
+#X obj 273 295 == 0;
+#X obj 273 342 spigot;
+#X obj 560 187 r \$0-outAmt_3;
+#X obj 597 376 s \$0-s_Op3Op2_2;
+#X obj 784 463 s \$0-s_Op3Op2;
+#X msg 597 332 color 12 0;
+#X msg 524 332 color 1 0;
+#X obj 530 249 == 0;
+#X obj 524 307 spigot;
+#X obj 675 187 r \$0-op3->op1;
+#X obj 530 270 t b f;
+#X obj 560 210 >= 1;
+#X obj 597 281 spigot;
+#X obj 597 245 t b f;
+#X obj 675 218 >= 1;
+#X obj 712 291 spigot;
+#X obj 712 253 t b f;
+#X obj 676 252 == 0;
+#X obj 524 359 spigot;
+#X obj 784 184 r \$0-op3->op2;
+#X obj 582 404 s \$0-s_Op3Op2;
+#X obj 784 216 >= 1;
+#X msg 784 273 color 12 0;
+#X obj 784 254 spigot;
+#X obj 784 235 t b f;
+#X obj 756 309 == 0;
+#X msg 750 429 color 1 0;
+#X obj 750 351 spigot;
+#X obj 756 330 t b f;
+#X obj 750 382 spigot;
+#X obj 750 406 spigot;
+#X obj 883 113 s \$0-s_Op3Op2h;
+#X obj 884 7 r \$0-op3->op2;
+#X msg 920 81 color 12 0;
+#X msg 883 59 color 1 0;
+#X obj 883 30 moses 1;
+#X obj 882 148 s \$0-s_Op3Op2Canvas;
+#X msg 1049 81 color 12 0;
+#X msg 1012 59 color 1 0;
+#X obj 1012 30 moses 1;
+#X obj 1013 7 r \$0-op3->op1;
+#X obj 1012 150 s \$0-s_Op3Op1Canvas;
+#X obj 1014 113 s \$0-s_Op3Op1h;
+#X msg 1318 122 color 12 0;
+#X msg 1281 87 color 1 0;
+#X obj 1281 58 moses 1;
+#X obj 1281 33 r \$0-op2->op3;
+#X obj 1281 151 s \$0-s_Op2Op3Canvas;
+#X obj 143 339 t b f;
+#X obj 273 319 t b f;
+#X msg 167 500 color 1 0;
+#X obj 143 416 spigot;
+#X obj 273 388 spigot;
+#X obj 273 418 spigot;
+#X msg 287 489 color 1 0;
+#X obj 406 598 r \$0-op3->op1;
+#X obj 112 596 r \$0-outAmt_2;
+#X obj 112 803 s \$0-s_Op2Op1;
+#X obj 262 596 r \$0-op2->op1;
+#X obj 262 628 >= 1;
+#X msg 262 705 color 12 0;
+#X obj 262 686 spigot;
+#X obj 262 667 t b f;
+#X obj 112 628 >= 1;
+#X msg 112 705 color 12 0;
+#X obj 112 686 spigot;
+#X obj 112 667 t b f;
+#X obj 262 802 s \$0-s_Op2Op1h;
+#X obj 406 631 >= 1;
+#X msg 406 708 color 12 0;
+#X obj 406 689 spigot;
+#X obj 406 670 t b f;
+#X obj 48 669 == 0;
+#X obj 207 667 == 0;
+#X obj 367 667 == 0;
+#X msg 33 778 color 1 0;
+#X obj 33 731 spigot;
+#X obj 33 755 spigot;
+#X obj 33 704 t b f;
+#X obj 207 697 t b f;
+#X msg 207 779 color 1 0;
+#X obj 207 732 spigot;
+#X obj 207 756 spigot;
+#X obj 366 699 t b f;
+#X obj 1120 638 s \$0-s_Op2Op1Canvas;
+#X obj 1120 520 r \$0-op2->op1;
+#X msg 1157 609 color 12 0;
+#X msg 1120 574 color 1 0;
+#X obj 1120 545 moses 1;
+#X obj 1005 551 r \$0-op1->op2;
+#X msg 1034 633 color 12 0;
+#X msg 1006 604 color 1 0;
+#X obj 1006 575 moses 1;
+#X obj 1005 709 s \$0-s_Op1Op2h;
+#X obj 553 519 r \$0-op1->op3;
+#X obj 766 568 r \$0-op2->op3;
+#X obj 646 518 r \$0-op1->op2;
+#X obj 588 775 s \$0-s_Op1Op2;
+#X obj 1035 679 s \$0-s_Op1Op2Canvas;
+#X msg 908 614 color 12 0;
+#X msg 875 586 color 1 0;
+#X obj 875 557 moses 1;
+#X obj 875 650 s \$0-s_Op1Op3Canvas;
+#X obj 875 532 r \$0-op1->op3;
+#X obj 901 714 s \$0-s_Op1Op3_1;
+#X obj 549 552 >= 1;
+#X msg 549 629 color 12 0;
+#X obj 549 610 spigot;
+#X obj 549 591 t b f;
+#X obj 645 554 >= 1;
+#X msg 645 631 color 12 0;
+#X obj 645 612 spigot;
+#X obj 646 593 t b f;
+#X obj 507 554 == 0;
+#X msg 588 689 color 1 0;
+#X obj 500 611 spigot;
+#X obj 588 666 spigot;
+#X obj 507 580 t b f;
+#X obj 607 582 t b f;
+#X obj 608 561 == 0;
+#X msg 799 650 color 12 0;
+#X msg 766 622 color 1 0;
+#X obj 766 593 moses 1;
+#X obj 764 686 s \$0-s_Op2Op3Canvas;
+#X obj 748 711 s \$0-s_Op2Op3;
+#X obj 1074 461 s \$0-s_Op1Op3h;
+#X obj 931 476 s \$0-s_Op2Op3h;
+#X obj 934 230 r \$0-op2->op3;
+#X obj 931 275 >= 1;
+#X msg 931 352 color 12 0;
+#X obj 931 333 spigot;
+#X obj 931 314 t b f;
+#X obj 1078 237 r \$0-op1->op3;
+#X obj 1074 270 >= 1;
+#X msg 1074 347 color 12 0;
+#X obj 1074 328 spigot;
+#X obj 1074 309 t b f;
+#X obj 1031 299 == 0;
+#X obj 1031 325 t b f;
+#X msg 1031 423 color 1 0;
+#X obj 1029 375 spigot;
+#X obj 885 303 == 0;
+#X obj 885 329 t b f;
+#X obj 883 403 spigot;
+#X msg 948 436 color 1 0;
+#X connect 0 0 1 0;
+#X connect 0 1 2 0;
+#X connect 1 0 3 0;
+#X connect 2 0 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 6 0;
+#X connect 5 1 7 0;
+#X connect 6 0 9 0;
+#X connect 7 0 9 0;
+#X connect 8 0 5 0;
+#X connect 10 0 11 0;
+#X connect 10 1 12 0;
+#X connect 11 0 14 0;
+#X connect 12 0 14 0;
+#X connect 13 0 10 0;
+#X connect 18 0 29 0;
+#X connect 19 0 23 0;
+#X connect 20 0 26 0;
+#X connect 21 0 16 0;
+#X connect 22 0 16 0;
+#X connect 23 0 22 0;
+#X connect 23 1 21 0;
+#X connect 24 0 15 0;
+#X connect 25 0 15 0;
+#X connect 26 0 25 0;
+#X connect 26 1 24 0;
+#X connect 27 0 17 0;
+#X connect 28 0 17 0;
+#X connect 29 0 28 0;
+#X connect 29 1 27 0;
+#X connect 30 0 31 0;
+#X connect 30 0 36 0;
+#X connect 30 0 37 0;
+#X connect 32 0 33 0;
+#X connect 33 0 35 0;
+#X connect 33 0 48 0;
+#X connect 34 0 30 0;
+#X connect 35 0 34 0;
+#X connect 35 1 34 1;
+#X connect 38 0 31 0;
+#X connect 38 0 36 0;
+#X connect 39 0 41 0;
+#X connect 39 0 52 0;
+#X connect 40 0 38 0;
+#X connect 41 0 40 0;
+#X connect 41 1 40 1;
+#X connect 42 0 39 0;
+#X connect 43 0 31 0;
+#X connect 44 0 46 0;
+#X connect 44 0 54 0;
+#X connect 45 0 43 0;
+#X connect 46 0 45 0;
+#X connect 46 1 45 1;
+#X connect 47 0 44 0;
+#X connect 48 0 50 0;
+#X connect 49 0 51 0;
+#X connect 50 0 49 0;
+#X connect 50 0 53 0;
+#X connect 50 0 55 0;
+#X connect 50 1 49 1;
+#X connect 50 1 105 1;
+#X connect 50 1 107 1;
+#X connect 51 0 37 0;
+#X connect 52 0 102 0;
+#X connect 53 0 105 0;
+#X connect 54 0 103 0;
+#X connect 55 0 106 0;
+#X connect 56 0 65 0;
+#X connect 59 0 57 0;
+#X connect 59 0 74 0;
+#X connect 60 0 72 0;
+#X connect 61 0 64 0;
+#X connect 61 0 82 0;
+#X connect 62 0 60 0;
+#X connect 63 0 68 0;
+#X connect 64 0 62 0;
+#X connect 64 1 62 1;
+#X connect 64 1 83 1;
+#X connect 65 0 67 0;
+#X connect 65 0 61 0;
+#X connect 66 0 59 0;
+#X connect 67 0 66 0;
+#X connect 67 1 66 1;
+#X connect 68 0 70 0;
+#X connect 68 0 71 0;
+#X connect 69 0 59 0;
+#X connect 70 0 69 0;
+#X connect 70 1 69 1;
+#X connect 71 0 72 1;
+#X connect 71 0 64 0;
+#X connect 71 0 84 1;
+#X connect 71 0 82 0;
+#X connect 72 0 57 0;
+#X connect 73 0 75 0;
+#X connect 75 0 78 0;
+#X connect 75 0 79 0;
+#X connect 76 0 58 0;
+#X connect 77 0 76 0;
+#X connect 78 0 77 0;
+#X connect 78 1 77 1;
+#X connect 79 0 82 0;
+#X connect 80 0 58 0;
+#X connect 81 0 83 0;
+#X connect 82 0 81 0;
+#X connect 82 1 81 1;
+#X connect 83 0 84 0;
+#X connect 84 0 80 0;
+#X connect 86 0 89 0;
+#X connect 87 0 85 0;
+#X connect 87 0 90 0;
+#X connect 88 0 85 0;
+#X connect 88 0 90 0;
+#X connect 89 0 88 0;
+#X connect 89 1 87 0;
+#X connect 91 0 95 0;
+#X connect 91 0 96 0;
+#X connect 92 0 95 0;
+#X connect 92 0 96 0;
+#X connect 93 0 92 0;
+#X connect 93 1 91 0;
+#X connect 94 0 93 0;
+#X connect 97 0 101 0;
+#X connect 98 0 101 0;
+#X connect 99 0 98 0;
+#X connect 99 1 97 0;
+#X connect 100 0 99 0;
+#X connect 102 0 53 0;
+#X connect 102 0 55 0;
+#X connect 102 1 53 1;
+#X connect 102 1 106 1;
+#X connect 103 0 55 0;
+#X connect 103 1 55 1;
+#X connect 104 0 36 0;
+#X connect 105 0 104 0;
+#X connect 106 0 107 0;
+#X connect 107 0 108 0;
+#X connect 108 0 31 0;
+#X connect 109 0 122 0;
+#X connect 110 0 117 0;
+#X connect 112 0 113 0;
+#X connect 113 0 116 0;
+#X connect 113 0 127 0;
+#X connect 114 0 111 0;
+#X connect 114 0 121 0;
+#X connect 115 0 114 0;
+#X connect 116 0 115 0;
+#X connect 116 1 115 1;
+#X connect 117 0 120 0;
+#X connect 117 0 126 0;
+#X connect 118 0 111 0;
+#X connect 119 0 118 0;
+#X connect 120 0 119 0;
+#X connect 120 1 119 1;
+#X connect 122 0 125 0;
+#X connect 122 0 128 0;
+#X connect 123 0 121 0;
+#X connect 124 0 123 0;
+#X connect 125 0 124 0;
+#X connect 125 1 124 1;
+#X connect 126 0 132 0;
+#X connect 127 0 133 0;
+#X connect 128 0 137 0;
+#X connect 129 0 111 0;
+#X connect 130 0 131 0;
+#X connect 131 0 129 0;
+#X connect 132 0 130 0;
+#X connect 132 1 130 1;
+#X connect 133 0 130 0;
+#X connect 133 0 135 0;
+#X connect 133 1 131 1;
+#X connect 133 1 135 1;
+#X connect 134 0 121 0;
+#X connect 135 0 136 0;
+#X connect 136 0 134 0;
+#X connect 137 0 135 0;
+#X connect 137 1 136 1;
+#X connect 139 0 142 0;
+#X connect 140 0 138 0;
+#X connect 141 0 138 0;
+#X connect 142 0 141 0;
+#X connect 142 1 140 0;
+#X connect 143 0 146 0;
+#X connect 144 0 147 0;
+#X connect 144 0 152 0;
+#X connect 145 0 147 0;
+#X connect 145 0 152 0;
+#X connect 146 0 145 0;
+#X connect 146 1 144 0;
+#X connect 148 0 159 0;
+#X connect 149 0 176 0;
+#X connect 150 0 163 0;
+#X connect 153 0 156 0;
+#X connect 153 0 158 0;
+#X connect 154 0 156 0;
+#X connect 154 0 158 0;
+#X connect 155 0 154 0;
+#X connect 155 1 153 0;
+#X connect 157 0 155 0;
+#X connect 159 0 162 0;
+#X connect 159 0 167 0;
+#X connect 160 0 151 0;
+#X connect 161 0 160 0;
+#X connect 162 0 161 0;
+#X connect 162 1 161 1;
+#X connect 163 0 166 0;
+#X connect 163 0 173 0;
+#X connect 164 0 151 0;
+#X connect 165 0 164 0;
+#X connect 166 0 165 0;
+#X connect 166 1 165 1;
+#X connect 167 0 171 0;
+#X connect 168 0 151 0;
+#X connect 169 0 170 0;
+#X connect 170 0 168 0;
+#X connect 171 0 169 0;
+#X connect 171 1 169 1;
+#X connect 172 0 169 0;
+#X connect 172 1 170 1;
+#X connect 173 0 172 0;
+#X connect 174 0 177 0;
+#X connect 174 0 178 0;
+#X connect 175 0 177 0;
+#X connect 175 0 178 0;
+#X connect 176 0 175 0;
+#X connect 176 1 174 0;
+#X connect 181 0 182 0;
+#X connect 182 0 185 0;
+#X connect 182 0 195 0;
+#X connect 183 0 180 0;
+#X connect 184 0 183 0;
+#X connect 185 0 184 0;
+#X connect 185 1 184 1;
+#X connect 186 0 187 0;
+#X connect 187 0 190 0;
+#X connect 187 0 191 0;
+#X connect 188 0 179 0;
+#X connect 188 0 180 0;
+#X connect 189 0 188 0;
+#X connect 190 0 189 0;
+#X connect 190 1 189 1;
+#X connect 191 0 192 0;
+#X connect 192 0 194 0;
+#X connect 192 1 194 1;
+#X connect 193 0 179 0;
+#X connect 194 0 193 0;
+#X connect 194 0 197 0;
+#X connect 195 0 196 0;
+#X connect 196 0 194 0;
+#X connect 196 1 197 1;
+#X connect 197 0 198 0;
+#X connect 198 0 180 0;
+#X restore 740 259 pd feedback_Matrix_GUI;
+#N canvas 0 0 452 302 FM_Pitch 0;
+#X floatatom 278 194 5 0 0 0 Op2_Pitch - -;
+#X floatatom 452 182 5 0 0 0 Op3_Pitch - -;
+#X obj 452 129 line;
+#X obj 453 108 pack \$1 f;
+#X obj 454 67 bang;
+#X floatatom 502 67 5 0 0 0 - - -;
+#X obj 453 88 random 500;
+#X obj 279 145 line;
+#X obj 280 124 pack \$1 f;
+#X obj 281 83 bang;
+#X floatatom 378 116 5 0 0 0 - - -;
+#X obj 280 104 random 500;
+#X floatatom 372 92 5 0 0 0 - - -;
+#X floatatom 537 108 5 0 0 0 - - -;
+#X obj 20 70 mtof;
+#X obj 19 238 line;
+#X obj 21 216 pack \$1 f;
+#X obj 21 196 random 500;
+#X obj 21 95 t b f;
+#X floatatom 95 179 5 0 0 0 - - -;
+#X obj 5 269 s \$0-pitch_Op1;
+#X obj 258 238 s \$0-pitch_Op2;
+#X obj 422 221 s \$0-pitch_Op3;
+#X obj 452 47 r \$0-NoteVel;
+#X obj 283 63 r \$0-NoteVel;
+#X obj 35 16 r \$0-NotePitch;
+#X floatatom 126 243 5 0 0 0 - - -;
+#X obj 452 152 + 2000;
+#X obj 76 156 / 5;
+#X obj 38 44 moses 1;
+#X obj 278 171 + 30;
+#X floatatom 239 99 5 0 0 0 - - -;
+#X floatatom 161 102 5 0 0 0 - - -;
+#X connect 2 0 27 0;
+#X connect 3 0 2 0;
+#X connect 4 0 6 0;
+#X connect 5 0 3 1;
+#X connect 6 0 3 0;
+#X connect 7 0 30 0;
+#X connect 8 0 7 0;
+#X connect 9 0 11 0;
+#X connect 10 0 8 1;
+#X connect 11 0 8 0;
+#X connect 12 0 11 1;
+#X connect 13 0 6 1;
+#X connect 13 0 27 1;
+#X connect 14 0 18 0;
+#X connect 14 0 20 0;
+#X connect 15 0 26 0;
+#X connect 16 0 15 0;
+#X connect 17 0 16 0;
+#X connect 18 0 17 0;
+#X connect 18 1 28 0;
+#X connect 19 0 16 1;
+#X connect 23 0 4 0;
+#X connect 23 0 22 0;
+#X connect 24 0 9 0;
+#X connect 24 0 21 0;
+#X connect 25 0 29 0;
+#X connect 27 0 1 0;
+#X connect 28 0 17 1;
+#X connect 29 1 14 0;
+#X connect 29 1 32 0;
+#X connect 30 0 0 0;
+#X restore 740 325 pd FM_Pitch;
+#X obj 768 39 loadbang;
+#X obj 768 77 s \$0-s_RsFB;
+#X text 463 291 And Envelopes (op1 \, op2 \, op3) -->;
+#N canvas 0 0 1102 748 sound-engine 0;
+#X obj 56 190 cos~;
+#X obj 56 166 +~;
+#X obj 56 121 phasor~;
+#X obj 226 191 cos~;
+#X obj 227 171 +~;
+#X obj 228 128 phasor~;
+#X obj 422 190 cos~;
+#X obj 423 170 +~;
+#X obj 424 122 phasor~;
+#X obj 66 242 sig~;
+#X obj 54 269 vcf~;
+#X floatatom 76 215 5 0 0 0 op1_FiltFeq - -;
+#X floatatom 116 224 5 0 0 0 op1_filtQ - -;
+#X obj 235 240 sig~;
+#X obj 226 265 vcf~;
+#X floatatom 235 211 5 0 0 0 op1_FiltFeq - -;
+#X floatatom 295 223 5 0 5 0 op1_filtQ - -;
+#X obj 432 240 sig~;
+#X obj 423 265 vcf~;
+#X floatatom 432 211 5 0 0 0 op1_FiltFeq - -;
+#X floatatom 494 224 5 0 0 0 op1_filtQ - -;
+#X obj 68 141 catch~ In_op1;
+#X obj 240 148 catch~ In_op2;
+#X obj 436 142 catch~ In_op3;
+#X obj 53 399 send~ \$0-Out_Op1;
+#X obj 225 395 send~ \$0-Out_Op2;
+#X obj 422 396 send~ \$0-Out_Op3;
+#N canvas 0 107 1011 691 AD 0;
+#X obj 432 149 inlet;
+#X obj 430 629 outlet~;
+#X obj 597 145 inlet;
+#X obj 818 164 inlet;
+#X obj 432 192 t b f;
+#X obj 432 399 t3_bpe;
+#X obj 432 334 t b b;
+#X obj 432 429 t3_line~ 0;
+#X obj 432 367 f 0.04;
+#X floatatom 469 283 5 0 0 0 - - -;
+#X obj 488 381 pack 0 0 1 1.5 1 0.5 0 1.5;
+#X text 525 268 pre-delay;
+#X floatatom 597 282 5 0 0 0 - - -;
+#X text 653 267 attack;
+#X floatatom 705 281 5 0 0 0 - - -;
+#X text 748 283 Samples;
+#X text 761 266 sustain;
+#X floatatom 818 278 5 0 0 0 - - -;
+#X text 861 280 Samples;
+#X text 874 263 release;
+#X msg 548 412 set _lin;
+#X msg 548 433 set _linsqrt;
+#X msg 548 454 set _sqrt;
+#X msg 548 474 set _sin;
+#X msg 549 495 set _sinhann;
+#X msg 549 517 set _hann;
+#X msg 350 346 stop;
+#X obj 432 534 fade~ _sin;
+#X connect 0 0 4 0;
+#X connect 2 0 12 0;
+#X connect 3 0 17 0;
+#X connect 4 0 6 0;
+#X connect 4 1 14 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 8 0;
+#X connect 6 1 10 0;
+#X connect 7 0 27 0;
+#X connect 8 0 5 0;
+#X connect 9 0 8 1;
+#X connect 10 0 5 0;
+#X connect 12 0 10 3;
+#X connect 14 0 10 5;
+#X connect 17 0 10 7;
+#X connect 20 0 27 0;
+#X connect 21 0 27 0;
+#X connect 22 0 27 0;
+#X connect 23 0 27 0;
+#X connect 24 0 27 0;
+#X connect 25 0 27 0;
+#X connect 26 0 5 0;
+#X connect 27 0 1 0;
+#X restore 735 295 pd AD;
+#X floatatom 823 231 5 0 0 0 - - -;
+#X obj 54 317 *~;
+#X obj 226 312 *~;
+#X obj 422 318 *~;
+#X obj 67 291 r~ \$0-env_1;
+#X obj 735 314 s~ \$0-env_1;
+#X obj 824 314 s~ \$0-env_2;
+#X obj 924 315 s~ \$0-env_3;
+#X obj 253 288 r~ \$0-env_2;
+#X obj 457 294 r~ \$0-env_3;
+#X obj 787 169 moses 1;
+#X obj 55 98 sig~;
+#N canvas 0 107 1011 691 AD 0;
+#X obj 432 149 inlet;
+#X obj 430 629 outlet~;
+#X obj 597 145 inlet;
+#X obj 818 164 inlet;
+#X obj 432 192 t b f;
+#X obj 432 399 t3_bpe;
+#X obj 432 334 t b b;
+#X obj 432 429 t3_line~ 0;
+#X obj 432 367 f 0.04;
+#X floatatom 469 283 5 0 0 0 - - -;
+#X obj 488 381 pack 0 0 1 1.5 1 0.5 0 1.5;
+#X text 525 268 pre-delay;
+#X floatatom 597 282 5 0 0 0 - - -;
+#X text 653 267 attack;
+#X floatatom 705 281 5 0 0 0 - - -;
+#X text 748 283 Samples;
+#X text 761 266 sustain;
+#X floatatom 818 278 5 0 0 0 - - -;
+#X text 861 280 Samples;
+#X text 874 263 release;
+#X msg 548 412 set _lin;
+#X msg 548 433 set _linsqrt;
+#X msg 548 454 set _sqrt;
+#X msg 548 474 set _sin;
+#X msg 549 495 set _sinhann;
+#X msg 549 517 set _hann;
+#X msg 350 346 stop;
+#X obj 432 534 fade~ _sin;
+#X connect 0 0 4 0;
+#X connect 2 0 12 0;
+#X connect 3 0 17 0;
+#X connect 4 0 6 0;
+#X connect 4 1 14 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 8 0;
+#X connect 6 1 10 0;
+#X connect 7 0 27 0;
+#X connect 8 0 5 0;
+#X connect 9 0 8 1;
+#X connect 10 0 5 0;
+#X connect 12 0 10 3;
+#X connect 14 0 10 5;
+#X connect 17 0 10 7;
+#X connect 20 0 27 0;
+#X connect 21 0 27 0;
+#X connect 22 0 27 0;
+#X connect 23 0 27 0;
+#X connect 24 0 27 0;
+#X connect 25 0 27 0;
+#X connect 26 0 5 0;
+#X connect 27 0 1 0;
+#X restore 824 295 pd AD;
+#X obj 823 211 * 100;
+#X obj 824 190 / 127;
+#N canvas 0 107 1011 691 AD 0;
+#X obj 432 149 inlet;
+#X obj 430 629 outlet~;
+#X obj 597 145 inlet;
+#X obj 818 164 inlet;
+#X obj 432 192 t b f;
+#X obj 432 399 t3_bpe;
+#X obj 432 334 t b b;
+#X obj 432 429 t3_line~ 0;
+#X obj 432 367 f 0.04;
+#X floatatom 469 283 5 0 0 0 - - -;
+#X obj 488 381 pack 0 0 1 1.5 1 0.5 0 1.5;
+#X text 525 268 pre-delay;
+#X floatatom 597 282 5 0 0 0 - - -;
+#X text 653 267 attack;
+#X floatatom 705 281 5 0 0 0 - - -;
+#X text 748 283 Samples;
+#X text 761 266 sustain;
+#X floatatom 818 278 5 0 0 0 - - -;
+#X text 861 280 Samples;
+#X text 874 263 release;
+#X msg 548 412 set _lin;
+#X msg 548 433 set _linsqrt;
+#X msg 548 454 set _sqrt;
+#X msg 548 474 set _sin;
+#X msg 549 495 set _sinhann;
+#X msg 549 517 set _hann;
+#X msg 350 346 stop;
+#X obj 432 534 fade~ _sin;
+#X connect 0 0 4 0;
+#X connect 2 0 12 0;
+#X connect 3 0 17 0;
+#X connect 4 0 6 0;
+#X connect 4 1 14 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 8 0;
+#X connect 6 1 10 0;
+#X connect 7 0 27 0;
+#X connect 8 0 5 0;
+#X connect 9 0 8 1;
+#X connect 10 0 5 0;
+#X connect 12 0 10 3;
+#X connect 14 0 10 5;
+#X connect 17 0 10 7;
+#X connect 20 0 27 0;
+#X connect 21 0 27 0;
+#X connect 22 0 27 0;
+#X connect 23 0 27 0;
+#X connect 24 0 27 0;
+#X connect 25 0 27 0;
+#X connect 26 0 5 0;
+#X connect 27 0 1 0;
+#X restore 924 296 pd AD;
+#X obj 747 252 r \$0-rAtt_1;
+#X obj 760 272 r \$0-rRel_1;
+#X obj 836 251 r \$0-rAtt_2;
+#X obj 849 270 r \$0-rRel_2;
+#X obj 936 256 r \$0-rAtt_3;
+#X obj 949 275 r \$0-rRel_3;
+#X obj 116 203 / 100;
+#X obj 55 76 r \$0-pitch_Op1;
+#X obj 227 104 sig~;
+#X obj 227 82 r \$0-pitch_Op2;
+#X obj 424 102 sig~;
+#X obj 424 80 r \$0-pitch_Op3;
+#X obj 787 148 r \$0-NoteVel;
+#X obj 525 292 r \$0-outAmt_3;
+#X obj 510 374 *~;
+#X obj 525 312 / 100;
+#X obj 309 371 *~;
+#X obj 324 312 / 100;
+#X obj 324 289 r \$0-outAmt_2;
+#X obj 112 352 *~;
+#X obj 127 293 / 100;
+#X obj 127 270 r \$0-outAmt_1;
+#X obj 112 374 throw~ \$0-out;
+#X obj 310 392 throw~ \$0-out;
+#X obj 510 396 throw~ \$0-out;
+#X obj 525 333 pack 0 50;
+#X obj 525 353 line~;
+#X obj 324 332 pack 0 50;
+#X obj 324 352 line~;
+#X obj 127 312 pack 0 50;
+#X obj 127 332 line~;
+#X connect 0 0 10 0;
+#X connect 1 0 0 0;
+#X connect 2 0 1 0;
+#X connect 3 0 14 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 6 0 18 0;
+#X connect 7 0 6 0;
+#X connect 8 0 7 0;
+#X connect 9 0 10 1;
+#X connect 10 0 29 0;
+#X connect 11 0 9 0;
+#X connect 12 0 10 2;
+#X connect 13 0 14 1;
+#X connect 14 0 30 0;
+#X connect 15 0 13 0;
+#X connect 16 0 14 2;
+#X connect 17 0 18 1;
+#X connect 18 0 31 0;
+#X connect 19 0 17 0;
+#X connect 20 0 18 2;
+#X connect 21 0 1 1;
+#X connect 22 0 4 1;
+#X connect 23 0 7 1;
+#X connect 27 0 33 0;
+#X connect 28 0 27 0;
+#X connect 28 0 40 0;
+#X connect 28 0 43 0;
+#X connect 29 0 24 0;
+#X connect 29 0 63 0;
+#X connect 30 0 25 0;
+#X connect 30 0 60 0;
+#X connect 31 0 26 0;
+#X connect 31 0 58 0;
+#X connect 32 0 29 1;
+#X connect 36 0 30 1;
+#X connect 37 0 31 1;
+#X connect 38 1 42 0;
+#X connect 39 0 2 0;
+#X connect 40 0 34 0;
+#X connect 41 0 28 0;
+#X connect 42 0 41 0;
+#X connect 43 0 35 0;
+#X connect 44 0 27 1;
+#X connect 45 0 27 2;
+#X connect 46 0 40 1;
+#X connect 47 0 40 2;
+#X connect 48 0 43 1;
+#X connect 49 0 43 2;
+#X connect 50 0 12 0;
+#X connect 51 0 39 0;
+#X connect 52 0 5 0;
+#X connect 53 0 52 0;
+#X connect 54 0 8 0;
+#X connect 55 0 54 0;
+#X connect 56 0 38 0;
+#X connect 57 0 59 0;
+#X connect 58 0 68 0;
+#X connect 59 0 69 0;
+#X connect 60 0 67 0;
+#X connect 61 0 71 0;
+#X connect 62 0 61 0;
+#X connect 63 0 66 0;
+#X connect 64 0 73 0;
+#X connect 65 0 64 0;
+#X connect 69 0 70 0;
+#X connect 70 0 58 1;
+#X connect 71 0 72 0;
+#X connect 72 0 60 1;
+#X connect 73 0 74 0;
+#X connect 74 0 63 1;
+#X restore 741 236 pd sound-engine;
+#N canvas 384 294 748 517 saves 0;
+#X obj 564 140 originator \$1 \$0;
+#X obj 564 117 r \$0-originator;
+#X obj 56 96 r \$0-outAmt_1;
+#X obj 56 147 s \$0-send-outAmt_1;
+#X obj 191 97 r \$0-outAmt_2;
+#X obj 191 148 s \$0-send-outAmt_2;
+#X obj 328 97 r \$0-outAmt_3;
+#X obj 328 148 s \$0-send-outAmt_3;
+#X text 54 65 OUT AMOUNTS;
+#X text 56 182 ENVELOPES;
+#X obj 57 210 r \$0-rAtt_1;
+#X obj 173 209 r \$0-rAtt_2;
+#X obj 292 208 r \$0-rAtt_3;
+#X obj 58 283 r \$0-rRel_1;
+#X obj 58 308 commun /Rel_1 \$0;
+#X obj 56 121 commun /outAmt_1 \$0;
+#X obj 191 122 commun /outAmt_2 \$0;
+#X obj 328 122 commun /outAmt_3 \$0;
+#X obj 57 234 commun /Att_1 \$0;
+#X obj 173 233 commun /Att_2 \$0;
+#X obj 292 232 commun /Att_3 \$0;
+#X obj 177 283 r \$0-rRel_2;
+#X obj 177 308 commun /Rel_2 \$0;
+#X obj 302 283 r \$0-rRel_3;
+#X obj 302 308 commun /Rel_3 \$0;
+#X obj 600 39 inlet;
+#X obj 58 330 s \$0-sRel_1;
+#X obj 57 257 s \$0-sAtt_1;
+#X obj 173 256 s \$0-sAtt_2;
+#X obj 292 255 s \$0-sAtt_3;
+#X obj 302 330 s \$0-sRel_3;
+#X obj 177 330 s \$0-sRel_2;
+#X obj 600 65 s \$0-originator;
+#X msg 545 217 substate \$1;
+#X obj 545 243 s \$0-originator;
+#X obj 467 223 t b f;
+#X obj 523 178 r \$0-preset-out;
+#X msg 474 248 set;
+#N canvas 358 497 899 308 ops 0;
+#X obj 15 54 commun /op3-op3 \$0;
+#X obj 153 54 commun /op3-op2 \$0;
+#X obj 296 54 commun /op3-op1 \$0;
+#X obj 14 151 commun /op2-op1 \$0;
+#X obj 152 149 commun /op2-op2 \$0;
+#X obj 290 150 commun /op2-op3 \$0;
+#X obj 12 242 commun /op1-op1 \$0;
+#X obj 150 240 commun /op1-op2 \$0;
+#X obj 288 241 commun /op1-op3 \$0;
+#X obj 15 82 s \$0-send-op3->op3;
+#X obj 15 29 r \$0-op3->op3;
+#X obj 153 24 s \$0-send-op3->op2;
+#X obj 153 84 r \$0-op3->op2;
+#X obj 296 26 s \$0-send-op3->op1;
+#X obj 296 84 r \$0-op3->op1;
+#X obj 14 121 s \$0-send-op2->op1;
+#X obj 14 181 r \$0-op2->op1;
+#X obj 152 179 r \$0-op2->op2;
+#X obj 152 119 s \$0-send-op2->op2;
+#X obj 290 120 s \$0-send-op2->op3;
+#X obj 288 211 s \$0-send-op1->op3;
+#X obj 150 210 s \$0-send-op1->op2;
+#X obj 12 212 s \$0-send-op1->op1;
+#X obj 290 180 r \$0-op2->op3;
+#X obj 288 271 r \$0-op1->op3;
+#X obj 150 270 r \$0-op1->op2;
+#X obj 12 272 r \$0-op1->op1;
+#X connect 0 0 9 0;
+#X connect 1 0 11 0;
+#X connect 2 0 13 0;
+#X connect 3 0 15 0;
+#X connect 4 0 18 0;
+#X connect 5 0 19 0;
+#X connect 6 0 22 0;
+#X connect 7 0 21 0;
+#X connect 8 0 20 0;
+#X connect 10 0 0 0;
+#X connect 12 0 1 0;
+#X connect 14 0 2 0;
+#X connect 16 0 3 0;
+#X connect 17 0 4 0;
+#X connect 23 0 5 0;
+#X connect 24 0 8 0;
+#X connect 25 0 7 0;
+#X connect 26 0 6 0;
+#X restore 60 370 pd ops;
+#X connect 1 0 0 0;
+#X connect 2 0 15 0;
+#X connect 4 0 16 0;
+#X connect 6 0 17 0;
+#X connect 10 0 18 0;
+#X connect 11 0 19 0;
+#X connect 12 0 20 0;
+#X connect 13 0 14 0;
+#X connect 14 0 26 0;
+#X connect 15 0 3 0;
+#X connect 16 0 5 0;
+#X connect 17 0 7 0;
+#X connect 18 0 27 0;
+#X connect 19 0 28 0;
+#X connect 20 0 29 0;
+#X connect 21 0 22 0;
+#X connect 22 0 31 0;
+#X connect 23 0 24 0;
+#X connect 24 0 30 0;
+#X connect 25 0 0 1;
+#X connect 33 0 34 0;
+#X connect 35 0 37 0;
+#X connect 35 1 33 0;
+#X connect 36 0 35 0;
+#X connect 37 0 34 0;
+#X restore 741 213 pd saves;
+#X obj 414 239 outlet~;
+#X obj 417 97 inlet;
+#X obj 460 96 inlet;
+#X obj 516 96 inlet;
+#X obj 741 190 inlet;
+#X floatatom 174 237 5 0 0 2 preset #0-preset-in #0-preset-out;
+#X connect 10 0 77 0;
+#X connect 72 0 73 0;
+#X connect 78 0 7 0;
+#X connect 79 0 6 0;
+#X connect 80 0 8 0;
+#X connect 81 0 76 0;
+#X coords 0 0 1 1 248 380 1;
diff --git a/instruments/adsr-engine.pd b/instruments/adsr-engine.pd
new file mode 100644
index 0000000..bcafca6
--- /dev/null
+++ b/instruments/adsr-engine.pd
@@ -0,0 +1,16 @@
+#N canvas 572 515 450 300 10;
+#X obj 128 132 madsr ------;
+#X obj 122 62 route level adsr;
+#X obj 131 32 inlet;
+#X obj 157 91 unpack 0 0 0 0;
+#X obj 127 169 outlet~;
+#X obj 276 152 print adsr;
+#X connect 0 0 4 0;
+#X connect 1 0 0 0;
+#X connect 1 0 0 1;
+#X connect 1 1 3 0;
+#X connect 2 0 1 0;
+#X connect 3 0 0 2;
+#X connect 3 1 0 3;
+#X connect 3 2 0 4;
+#X connect 3 3 0 5;
diff --git a/instruments/analogue-engine.pd b/instruments/analogue-engine.pd
new file mode 100644
index 0000000..fac15a1
--- /dev/null
+++ b/instruments/analogue-engine.pd
@@ -0,0 +1,25 @@
+#N canvas 507 128 450 300 10;
+#X obj 92 244 analogue;
+#X obj 58 21 inlet;
+#X obj 193 101 unpack 0 0 0;
+#X obj 105 272 outlet~;
+#X obj 66 54 route freq analosc lfo;
+#X obj 66 199 + 0;
+#X obj 82 102 osc~ 0;
+#X obj 82 126 snapshot~;
+#X obj 131 101 bang~;
+#X obj 82 152 t b f;
+#X connect 0 0 3 0;
+#X connect 1 0 4 0;
+#X connect 2 0 0 0;
+#X connect 2 1 0 2;
+#X connect 2 2 0 3;
+#X connect 4 0 5 0;
+#X connect 4 1 2 0;
+#X connect 4 2 6 0;
+#X connect 5 0 0 1;
+#X connect 6 0 7 0;
+#X connect 7 0 9 0;
+#X connect 8 0 7 0;
+#X connect 9 0 5 0;
+#X connect 9 1 5 1;
diff --git a/instruments/analogue.pd b/instruments/analogue.pd
new file mode 100644
index 0000000..0a8ca00
--- /dev/null
+++ b/instruments/analogue.pd
@@ -0,0 +1,48 @@
+#N canvas 200 196 781 405 10;
+#X obj 198 233 plugin~ analogueOsc;
+#X msg 66 209 print;
+#X obj 289 109 mtof;
+#X msg 168 179 control #1 \$1;
+#X floatatom 177 91 5 0 0 0 waveform - -;
+#X floatatom 311 77 5 0 0 0 frequency - -;
+#X floatatom 470 91 5 0 0 0 warmth - -;
+#X floatatom 579 94 5 0 0 0 instabil - -;
+#X msg 289 166 control #2 \$1;
+#X msg 463 166 control #3 \$1;
+#X msg 572 170 control #4 \$1;
+#X obj 286 135 clip 0.0441 22005;
+#X obj 460 135 clip 0 1;
+#X obj 458 111 scale 0 127 0 1;
+#X obj 567 114 scale 0 127 0 1;
+#X obj 569 138 clip 0 1;
+#X obj 325 271 outlet~;
+#X obj 164 36 inlet waveform;
+#X obj 289 34 inlet frequency;
+#X obj 456 37 inlet warmth;
+#X obj 589 36 inlet instabil;
+#X obj 417 272 outlet;
+#X obj 162 133 int;
+#X obj 162 69 clip 1 4;
+#X connect 0 0 21 0;
+#X connect 0 1 16 0;
+#X connect 1 0 0 0;
+#X connect 2 0 11 0;
+#X connect 3 0 0 0;
+#X connect 4 0 22 0;
+#X connect 5 0 2 0;
+#X connect 6 0 13 0;
+#X connect 7 0 14 0;
+#X connect 8 0 0 0;
+#X connect 9 0 0 0;
+#X connect 10 0 0 0;
+#X connect 11 0 8 0;
+#X connect 12 0 9 0;
+#X connect 13 0 12 0;
+#X connect 14 0 15 0;
+#X connect 15 0 10 0;
+#X connect 17 0 23 0;
+#X connect 18 0 2 0;
+#X connect 19 0 13 0;
+#X connect 20 0 14 0;
+#X connect 22 0 3 0;
+#X connect 23 0 22 0;
diff --git a/instruments/analosc.pd b/instruments/analosc.pd
new file mode 100644
index 0000000..c8b7900
--- /dev/null
+++ b/instruments/analosc.pd
@@ -0,0 +1,101 @@
+#N canvas 235 299 385 151 10;
+#X obj 2 14 cnv 15 382 130 empty empty empty 20 12 0 14 -195568 -66577
+0;
+#N canvas 37 548 782 304 interna 0;
+#X obj 55 37 r \$0-wave-out;
+#X obj 57 108 s \$0-wave-in;
+#X obj 172 42 r \$0-warm-out;
+#X obj 177 109 s \$0-warm-in;
+#X obj 310 61 r \$0-inst-out;
+#X obj 310 109 s \$0-inst-in;
+#X obj 528 241 originator \$1 \$0;
+#X obj 425 143 inlet;
+#X msg 487 189 substate \$1;
+#X obj 424 165 t b f;
+#X msg 424 189 set mem;
+#X obj 29 105 + 1;
+#X obj 424 244 outlet;
+#X obj 307 86 commun /inst \$0;
+#X obj 628 114 s \$0-OSC;
+#X obj 628 39 inlet;
+#X obj 628 88 OSCroute \$1;
+#X obj 625 194 OSCroute /preset;
+#X obj 625 167 r \$0-OSC;
+#X obj 625 218 s \$0-preset;
+#X text 392 265 Preset the ADSR \, too;
+#X obj 174 86 commun /warm \$0;
+#X obj 54 85 commun /wave \$0;
+#X obj 134 196 pack 0 0 0;
+#X obj 157 162 t b f;
+#X obj 204 163 t b f;
+#X msg 116 217 analosc \$1 \$2 \$3;
+#X obj 98 250 outlet;
+#X obj 433 59 r \$0-lfo;
+#X obj 433 113 s \$0-lfo;
+#X msg 293 217 lfo \$1;
+#X obj 433 86 commun /lfo \$0;
+#X connect 0 0 11 0;
+#X connect 0 0 22 0;
+#X connect 2 0 21 0;
+#X connect 2 0 24 0;
+#X connect 4 0 13 0;
+#X connect 4 0 25 0;
+#X connect 7 0 9 0;
+#X connect 8 0 6 0;
+#X connect 8 0 12 0;
+#X connect 9 0 10 0;
+#X connect 9 1 8 0;
+#X connect 10 0 6 0;
+#X connect 10 0 12 0;
+#X connect 11 0 23 0;
+#X connect 13 0 5 0;
+#X connect 15 0 16 0;
+#X connect 16 0 14 0;
+#X connect 17 0 19 0;
+#X connect 18 0 17 0;
+#X connect 21 0 3 0;
+#X connect 22 0 1 0;
+#X connect 23 0 26 0;
+#X connect 24 0 23 0;
+#X connect 24 1 23 1;
+#X connect 25 0 23 0;
+#X connect 25 1 23 2;
+#X connect 26 0 27 0;
+#X connect 28 0 30 0;
+#X connect 28 0 31 0;
+#X connect 30 0 27 0;
+#X connect 31 0 29 0;
+#X restore 191 2 pd interna;
+#X obj 10 33 cnv 15 105 100 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 24 52 vradio 18 0 0 4 \$0-wave-out \$0-wave-in Wave. 10 -10
+1 10 -166441 -1 -1 0;
+#X obj 44 51 cnv 15 40 16 empty empty Sin 9 10 1 10 -233017 -66577
+0;
+#X obj 44 69 cnv 15 40 16 empty empty Tri 9 10 1 10 -233017 -66577
+0;
+#X obj 44 87 cnv 15 40 16 empty empty Square 9 10 1 10 -233017 -66577
+0;
+#X obj 43 105 cnv 15 40 16 empty empty Saw 9 10 1 10 -233017 -66577
+0;
+#X obj 330 44 vradio 10 0 0 8 empty \$0-preset preset 0 -6 0 8 -261681
+-1 -1 0;
+#X obj 345 46 nbx 3 14 -1e+37 1e+37 0 0 empty \$0-preset empty 0 -6
+0 10 -261681 -1 -1 0 256;
+#X obj 222 40 mgadsr \$1-adsr;
+#X obj 307 2 inlet OSC;
+#X obj 329 127 outlet;
+#X obj 146 42 hsl 48 15 0 127 0 0 \$0-warm-in \$0-warm-out warm -2
+-6 1 8 -261689 -258699 -1 800 1;
+#X obj 147 80 hsl 48 15 0 127 0 0 \$0-inst-in \$0-inst-out inst -2
+-6 1 8 -261689 -62784 -1 700 1;
+#X obj 147 116 hsl 48 15 0 127 0 0 \$0-lfo-in \$0-lfo-out lfo -2 -6
+1 8 -261689 -35591 -1 800 1;
+#X connect 1 0 12 0;
+#X connect 1 1 10 0;
+#X connect 8 0 9 0;
+#X connect 9 0 1 0;
+#X connect 10 0 12 0;
+#X connect 11 0 1 1;
+#X connect 11 0 10 1;
+#X coords 0 0 1 1 384 145 1;
diff --git a/instruments/d-drumcenter.pd b/instruments/d-drumcenter.pd
new file mode 100644
index 0000000..8226835
--- /dev/null
+++ b/instruments/d-drumcenter.pd
@@ -0,0 +1,232 @@
+#N canvas 16 88 1206 681 10;
+#X obj 265 117 inlet;
+#X obj 316 117 inlet;
+#X obj 362 117 inlet;
+#X obj 265 212 mtof;
+#X obj 362 191 mtof;
+#X text 360 84 To-freq;
+#X text 263 84 From-freq;
+#X text 321 97 time;
+#X obj 406 532 *~;
+#X obj 509 117 inlet;
+#X obj 560 117 inlet;
+#X text 551 98 att_time;
+#X text 602 85 release;
+#X obj 43 48 inlet;
+#X text 40 25 trigger;
+#X obj 43 125 f 1;
+#X obj 43 151 s \$0-trigger;
+#X obj 111 270 r \$0-trigger;
+#X obj 416 298 r \$0-trigger;
+#X obj 406 598 outlet~;
+#X obj 501 364 *~;
+#X obj 492 387 *~;
+#X obj 757 120 inlet;
+#X obj 808 120 inlet;
+#X obj 856 120 inlet;
+#X obj 713 301 r \$0-trigger;
+#X obj 817 364 *~;
+#X obj 808 387 *~;
+#X obj 609 441 *~;
+#X text 753 83 attack_level;
+#X text 806 100 att_time;
+#X text 849 84 release;
+#X obj 926 121 inlet;
+#N canvas 379 248 450 300 noise 0;
+#X obj 215 52 == 1;
+#X obj 151 51 == 0;
+#X obj 106 228 outlet~;
+#X obj 257 79 inlet;
+#X obj 214 4 r \$0-filt_type;
+#X obj 92 73 inlet~;
+#N canvas 358 389 450 300 hip 0;
+#X obj 130 69 inlet~;
+#X obj 130 207 outlet~;
+#X obj 251 70 inlet;
+#X obj 251 119 switch~ 0;
+#X obj 130 114 hip~ 4000;
+#X obj 188 70 inlet;
+#X obj 352 74 r \$0-Q;
+#X obj 225 157 hp2~ 4000 0.707 10;
+#X connect 0 0 4 0;
+#X connect 0 0 7 0;
+#X connect 2 0 3 0;
+#X connect 5 0 4 1;
+#X connect 5 0 7 1;
+#X connect 6 0 7 2;
+#X connect 7 0 1 0;
+#X restore 91 146 pd hip;
+#N canvas 358 389 450 300 lop 0;
+#X obj 130 69 inlet~;
+#X obj 130 168 outlet~;
+#X obj 251 70 inlet;
+#X obj 188 70 inlet;
+#X obj 130 114 lop~ 4000;
+#X obj 251 120 switch~ 1;
+#X obj 350 83 r \$0-Q;
+#X obj 172 146 lp2~ 4000 0.707 20;
+#X connect 0 0 4 0;
+#X connect 0 0 7 0;
+#X connect 2 0 5 0;
+#X connect 3 0 4 1;
+#X connect 3 0 7 1;
+#X connect 6 0 7 2;
+#X connect 7 0 1 0;
+#X restore 158 145 pd lop;
+#N canvas 201 195 450 300 bap 0;
+#X obj 130 69 inlet~;
+#X obj 130 168 outlet~;
+#X obj 251 70 inlet;
+#X obj 188 70 inlet;
+#X obj 130 114 lop~ 4000;
+#X obj 350 83 r \$0-Q;
+#X obj 172 146 bpq2~ 400 0.707 20;
+#X obj 251 120 switch~ 0;
+#X connect 0 0 4 0;
+#X connect 0 0 6 0;
+#X connect 2 0 7 0;
+#X connect 3 0 4 1;
+#X connect 3 0 6 1;
+#X connect 5 0 6 2;
+#X connect 6 0 1 0;
+#X restore 245 147 pd bap;
+#X obj 262 52 == 2;
+#X obj 215 24 unpack 0 0;
+#X connect 0 0 7 2;
+#X connect 1 0 6 2;
+#X connect 3 0 6 1;
+#X connect 3 0 7 1;
+#X connect 3 0 8 1;
+#X connect 4 0 10 0;
+#X connect 5 0 7 0;
+#X connect 5 0 6 0;
+#X connect 5 0 8 0;
+#X connect 6 0 2 0;
+#X connect 7 0 2 0;
+#X connect 8 0 2 0;
+#X connect 9 0 8 2;
+#X connect 10 0 1 0;
+#X connect 10 0 0 0;
+#X connect 10 0 9 0;
+#X restore 609 382 pd noise;
+#X obj 190 474 osc~;
+#X obj 43 101 bang;
+#X obj 105 82 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 111 322 t b;
+#X text 812 41 NOISE;
+#X text 537 71 OSC AMPLITUTE;
+#X text 307 57 OSC FREQUENCIES;
+#X obj 981 120 inlet;
+#X obj 926 147 s \$0-filt_type;
+#X obj 928 184 s \$0-filt_freq;
+#X obj 660 359 r \$0-filt_freq;
+#X obj 560 166 f;
+#X obj 362 168 f;
+#X obj 265 166 f;
+#X obj 757 169 f;
+#X obj 808 169 f;
+#X obj 856 169 f;
+#X obj 609 117 inlet;
+#X obj 609 166 f;
+#X text 500 86 attack_level;
+#X obj 509 166 f 1;
+#X obj 227 475 osc~;
+#X floatatom 271 408 5 0 0;
+#X obj 226 515 *~ 0.3;
+#X obj 267 476 osc~;
+#X obj 608 356 noise~;
+#X obj 111 346 f 0.5;
+#X obj 824 330 2lineseg~;
+#X obj 507 336 2lineseg~;
+#X obj 188 382 line~;
+#X obj 303 250 pack 0 0;
+#X msg 303 273 set \$1 \$2;
+#X obj 316 190 t b f;
+#X msg 226 310 369.994;
+#X msg 233 358 55 9;
+#X obj 232 334 bang;
+#X msg 251 274 set \$1;
+#X obj 44 74 select 0;
+#X obj 287 443 -~ 0.3;
+#X obj 227 441 +~ 0.3;
+#X obj 1041 117 inlet;
+#X obj 1040 146 s \$0-detune;
+#X obj 324 406 r \$0-detune;
+#X obj 1124 122 inlet;
+#X obj 1124 151 s \$0-Q;
+#X text 1036 94 osc detune;
+#X text 1119 92 filter Q;
+#X connect 0 0 47 0;
+#X connect 1 0 66 0;
+#X connect 2 0 46 0;
+#X connect 3 0 70 0;
+#X connect 4 0 64 0;
+#X connect 8 0 19 0;
+#X connect 9 0 54 0;
+#X connect 10 0 45 0;
+#X connect 13 0 71 0;
+#X connect 15 0 16 0;
+#X connect 17 0 37 0;
+#X connect 17 0 67 0;
+#X connect 18 0 62 0;
+#X connect 20 0 21 0;
+#X connect 20 0 21 1;
+#X connect 21 0 8 1;
+#X connect 22 0 48 0;
+#X connect 23 0 49 0;
+#X connect 24 0 50 0;
+#X connect 25 0 61 0;
+#X connect 26 0 27 0;
+#X connect 26 0 27 1;
+#X connect 27 0 28 1;
+#X connect 28 0 19 0;
+#X connect 32 0 42 0;
+#X connect 33 0 28 0;
+#X connect 34 0 57 0;
+#X connect 35 0 15 0;
+#X connect 36 0 35 0;
+#X connect 37 0 60 0;
+#X connect 41 0 43 0;
+#X connect 44 0 33 1;
+#X connect 45 0 62 2;
+#X connect 46 0 4 0;
+#X connect 47 0 3 0;
+#X connect 48 0 61 1;
+#X connect 49 0 61 2;
+#X connect 50 0 61 4;
+#X connect 51 0 52 0;
+#X connect 52 0 62 4;
+#X connect 54 0 62 1;
+#X connect 55 0 57 0;
+#X connect 56 0 72 1;
+#X connect 56 0 73 1;
+#X connect 57 0 8 0;
+#X connect 58 0 57 0;
+#X connect 59 0 33 0;
+#X connect 60 0 34 1;
+#X connect 60 0 55 1;
+#X connect 60 0 58 1;
+#X connect 61 0 26 0;
+#X connect 61 0 26 1;
+#X connect 62 0 20 0;
+#X connect 62 0 20 1;
+#X connect 63 0 34 0;
+#X connect 63 0 72 0;
+#X connect 63 0 73 0;
+#X connect 64 0 65 0;
+#X connect 65 0 68 0;
+#X connect 66 0 64 0;
+#X connect 66 1 64 1;
+#X connect 67 0 63 0;
+#X connect 67 0 69 0;
+#X connect 68 0 63 0;
+#X connect 69 0 68 0;
+#X connect 70 0 67 0;
+#X connect 71 1 35 0;
+#X connect 72 0 58 0;
+#X connect 73 0 55 0;
+#X connect 74 0 75 0;
+#X connect 76 0 72 1;
+#X connect 76 0 73 1;
+#X connect 77 0 78 0;
diff --git a/instruments/example.pd b/instruments/example.pd
new file mode 100644
index 0000000..2943b7b
--- /dev/null
+++ b/instruments/example.pd
@@ -0,0 +1,153 @@
+#N canvas 126 119 893 562 10;
+#X obj 92 84 analosc /erster;
+#X obj 171 236 r \$0-notes;
+#X obj 655 479 ezdac~;
+#X obj 171 6 careGUI;
+#X obj 52 476 sendOSC;
+#X msg 70 450 connect localhost 3000;
+#X obj 110 477 loadbang;
+#X obj 60 62 dumpOSC 3000;
+#X obj 72 337 netcontrol /erster warm;
+#X obj 72 393 netcontrol /erster-adsr s;
+#N canvas 0 0 320 159 notes 0;
+#X obj 102 157 makenote 0.5 200;
+#X obj 120 187 pack 0 0;
+#X obj 120 220 s \$0-notes;
+#X floatatom 127 114 5 0 0 1 note_length - -;
+#X obj 107 284 makenote 0.5 200;
+#X obj 125 314 pack 0 0;
+#X obj 125 347 s \$0-notes;
+#X obj 99 414 makenote 0.5 200;
+#X obj 117 444 pack 0 0;
+#X obj 117 477 s \$0-notes;
+#X obj 31 112 unpack 0 0 0;
+#X msg 26 87 34 51 58;
+#X obj 26 62 metro 200;
+#X obj 11 112 tgl 15 0 empty empty autoplay 0 -6 0 8 -262144 -1 -1
+1 1;
+#X obj 136 76 pack 0 0 0;
+#X obj 126 96 prepend set;
+#X floatatom 83 40 5 0 0 2 Notes - -;
+#X floatatom 156 40 5 0 0 0 - - -;
+#X floatatom 254 41 5 0 0 0 - - -;
+#X obj 155 56 t b f;
+#X obj 209 55 t b f;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 3 0 0 2;
+#X connect 3 0 4 2;
+#X connect 3 0 7 2;
+#X connect 3 0 12 1;
+#X connect 4 0 5 0;
+#X connect 4 1 5 1;
+#X connect 5 0 6 0;
+#X connect 7 0 8 0;
+#X connect 7 1 8 1;
+#X connect 8 0 9 0;
+#X connect 10 0 7 0;
+#X connect 10 1 4 0;
+#X connect 10 2 0 0;
+#X connect 11 0 10 0;
+#X connect 12 0 11 0;
+#X connect 13 0 12 0;
+#X connect 14 0 15 0;
+#X connect 15 0 11 0;
+#X connect 16 0 14 0;
+#X connect 17 0 19 0;
+#X connect 18 0 20 0;
+#X connect 19 0 14 0;
+#X connect 19 1 14 1;
+#X connect 20 0 14 0;
+#X connect 20 1 14 2;
+#X coords 0 0 1 1 200 140 1;
+#X restore 279 240 pd notes;
+#X obj 635 441 catch~ finalout;
+#X obj 64 280 throw~ finalout;
+#X obj 483 238 polyengines;
+#X obj 487 287 throw~ finalout;
+#N canvas 0 0 320 159 notes2 0;
+#X obj 102 157 makenote 0.5 200;
+#X obj 120 187 pack 0 0;
+#X obj 120 220 s \$0-notes;
+#X floatatom 127 114 5 0 0 1 note_length - -;
+#X obj 107 284 makenote 0.5 200;
+#X obj 125 314 pack 0 0;
+#X obj 125 347 s \$0-notes;
+#X obj 99 414 makenote 0.5 200;
+#X obj 117 444 pack 0 0;
+#X obj 31 112 unpack 0 0 0;
+#X msg 26 87 52 46 31;
+#X obj 26 62 metro 200;
+#X obj 11 112 tgl 15 0 empty empty autoplay 0 -6 0 8 -262144 -1 -1
+1 1;
+#X obj 136 76 pack 0 0 0;
+#X obj 126 96 prepend set;
+#X floatatom 83 40 5 0 0 2 Notes - -;
+#X floatatom 156 40 5 0 0 0 - - -;
+#X floatatom 254 41 5 0 0 0 - - -;
+#X obj 155 56 t b f;
+#X obj 209 55 t b f;
+#X obj 117 477 outlet;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 3 0 0 2;
+#X connect 3 0 4 2;
+#X connect 3 0 7 2;
+#X connect 3 0 11 1;
+#X connect 4 0 5 0;
+#X connect 4 1 5 1;
+#X connect 5 0 6 0;
+#X connect 7 0 8 0;
+#X connect 7 1 8 1;
+#X connect 8 0 20 0;
+#X connect 9 0 7 0;
+#X connect 9 1 4 0;
+#X connect 9 2 0 0;
+#X connect 10 0 9 0;
+#X connect 11 0 10 0;
+#X connect 12 0 11 0;
+#X connect 13 0 14 0;
+#X connect 14 0 10 0;
+#X connect 15 0 13 0;
+#X connect 16 0 18 0;
+#X connect 17 0 19 0;
+#X connect 18 0 13 0;
+#X connect 18 1 13 1;
+#X connect 19 0 13 0;
+#X connect 19 1 13 2;
+#X coords 0 0 1 1 200 140 1;
+#X restore 670 243 pd notes2;
+#X obj 670 389 s \$0-zweiter;
+#X obj 570 238 r \$0-zweiter;
+#X obj 688 459 catch~ finaloutr;
+#X obj 83 299 throw~ finaloutr;
+#X obj 515 314 throw~ finaloutr;
+#X obj 90 257 gpans~;
+#X obj 485 264 gpans~;
+#X obj 278 393 netcontrol /zweiter warm;
+#X obj 92 235 polyengines;
+#X obj 483 87 analosc /zweiter;
+#X connect 0 0 24 1;
+#X connect 1 0 24 0;
+#X connect 5 0 4 0;
+#X connect 6 0 5 0;
+#X connect 7 0 0 0;
+#X connect 7 0 25 0;
+#X connect 8 0 4 0;
+#X connect 9 0 4 0;
+#X connect 11 0 2 0;
+#X connect 13 0 22 0;
+#X connect 13 0 22 1;
+#X connect 15 0 16 0;
+#X connect 17 0 13 0;
+#X connect 18 0 2 1;
+#X connect 21 0 12 0;
+#X connect 21 1 19 0;
+#X connect 22 0 14 0;
+#X connect 22 1 20 0;
+#X connect 23 0 4 0;
+#X connect 24 0 21 0;
+#X connect 24 0 21 1;
+#X connect 25 0 13 1;
diff --git a/instruments/madsr.pd b/instruments/madsr.pd
new file mode 100644
index 0000000..919197e
--- /dev/null
+++ b/instruments/madsr.pd
@@ -0,0 +1,70 @@
+#N canvas 466 68 634 581 10;
+#X text 52 50 This patch is used as an abstraction in 25.envelope.pd
+;
+#X obj 95 108 inlet;
+#X obj 298 111 inlet;
+#X text 91 79 trigger;
+#X obj 95 138 sel 0;
+#X obj 144 138 t b;
+#X obj 362 112 inlet;
+#X obj 371 422 line~;
+#X obj 410 112 inlet;
+#X obj 459 111 inlet;
+#X obj 504 111 inlet;
+#X msg 95 191 stop;
+#X text 378 86 Traditional A \, D \, S \, R;
+#X text 296 88 level;
+#X text 32 302 ATTACK;
+#X obj 371 449 outlet~;
+#X text 7 325 recall level;
+#X text 7 345 and pack with;
+#X text 8 365 attack time;
+#X text 28 124 if zero;
+#X text 29 141 release;
+#X text 17 183 and cancel;
+#X text 17 199 decay;
+#X text 148 120 bang if attack;
+#X text 183 294 on attack \, set a;
+#X text 147 307 delay to go to sustain;
+#X text 189 324 recall sustain value;
+#X text 185 347 multiply by overall level;
+#X text 220 370 pack with decay time;
+#X text 510 386 on release ramp;
+#X text 511 403 back to zero;
+#X text 63 12 adsr - arguments: level \, attack time \, decay time
+\, sustain level \, release time;
+#X text 17 487 When you send this patch a nonzero trigger it schedules
+a line~ to do an attack and decay \, and if zero \, it starts the release
+ramp.;
+#X text 18 533 Objects such as f and pack can be given dollar sign
+arguments to initialize their contents from adsr's creation arguments.
+Inlets are supplied to update them on the fly.;
+#X obj 104 334 f;
+#X obj 309 301 del;
+#X obj 338 324 f;
+#X obj 364 346 *;
+#X obj 371 369 pack 0 0;
+#X obj 517 360 pack 0 0;
+#X obj 104 359 pack 0 0;
+#X connect 1 0 4 0;
+#X connect 2 0 34 1;
+#X connect 2 0 37 1;
+#X connect 4 0 11 0;
+#X connect 4 0 39 0;
+#X connect 4 1 5 0;
+#X connect 5 0 34 0;
+#X connect 5 0 35 0;
+#X connect 6 0 35 1;
+#X connect 6 0 40 1;
+#X connect 7 0 15 0;
+#X connect 8 0 38 1;
+#X connect 9 0 36 1;
+#X connect 10 0 39 1;
+#X connect 11 0 35 0;
+#X connect 34 0 40 0;
+#X connect 35 0 36 0;
+#X connect 36 0 37 0;
+#X connect 37 0 38 0;
+#X connect 38 0 7 0;
+#X connect 39 0 7 0;
+#X connect 40 0 7 0;
diff --git a/instruments/mafm/MA_FM.pd b/instruments/mafm/MA_FM.pd
new file mode 100644
index 0000000..4d861fd
--- /dev/null
+++ b/instruments/mafm/MA_FM.pd
@@ -0,0 +1,1249 @@
+#N canvas 726 332 249 426 10;
+#X obj 13 239 vsl 15 128 0 1000 0 0 \$0-rAtt_1 \$0-sAtt_1 A 0 -8 1728
+8 -262144 -1 -1 4400 1;
+#X obj 31 239 vsl 15 128 0 1000 0 0 \$0-rRel_1 \$0-sRel_1 R 0 -8 1728
+8 -262144 -1 -1 10500 1;
+#X obj 72 241 vsl 15 128 0 1000 0 0 \$0-rAtt_2 \$0-sAtt_2 A 0 -8 1728
+8 -262144 -1 -1 5600 1;
+#X obj 90 241 vsl 15 128 0 1000 0 0 \$0-rRel_2 \$0-sRel_2 R 0 -8 1728
+8 -262144 -1 -1 600 1;
+#X obj 133 240 vsl 15 128 0 1000 0 0 \$0-rAtt_3 \$0-sAtt_3 A 0 -8 1728
+8 -262144 -1 -1 900 1;
+#X obj 151 240 vsl 15 128 0 1000 0 0 \$0-rRel_3 \$0-sRel_3 R 0 -8 1728
+8 -262144 -1 -1 6800 1;
+#X obj 430 158 s \$0-NoteVel;
+#X obj 415 179 s \$0-NotePitch;
+#X obj 446 137 s \$0-NoteChnl;
+#N canvas 0 0 1054 904 FM_Feedback 0;
+#X obj 181 178 line~;
+#X obj 181 152 pack 0 50;
+#X obj 181 126 / 100;
+#X obj 165 202 *~;
+#X obj 357 177 line~;
+#X obj 357 151 pack 0 50;
+#X obj 357 125 / 100;
+#X obj 341 201 *~;
+#X obj 532 175 line~;
+#X obj 532 149 pack 0 50;
+#X obj 532 123 / 100;
+#X obj 516 199 *~;
+#X obj 165 225 throw~ In_op1;
+#X obj 341 226 throw~ In_op1;
+#X obj 517 225 throw~ In_op1;
+#X obj 110 153 r~ \$0-Out_Op1;
+#X obj 278 134 r~ \$0-Out_Op2;
+#X obj 465 150 r~ \$0-Out_Op3;
+#X obj 110 183 z~ 1;
+#X obj 296 178 z~ 1;
+#X obj 466 176 z~ 1;
+#X obj 165 330 line~;
+#X obj 165 304 pack 0 50;
+#X obj 165 278 / 100;
+#X obj 149 354 *~;
+#X obj 341 329 line~;
+#X obj 341 303 pack 0 50;
+#X obj 341 277 / 100;
+#X obj 325 353 *~;
+#X obj 516 327 line~;
+#X obj 516 301 pack 0 50;
+#X obj 516 275 / 100;
+#X obj 500 351 *~;
+#X obj 94 305 r~ \$0-Out_Op1;
+#X obj 262 286 r~ \$0-Out_Op2;
+#X obj 449 302 r~ \$0-Out_Op3;
+#X obj 94 335 z~ 1;
+#X obj 280 330 z~ 1;
+#X obj 450 328 z~ 1;
+#X obj 152 496 line~;
+#X obj 152 470 pack 0 50;
+#X obj 152 444 / 100;
+#X obj 136 520 *~;
+#X obj 328 495 line~;
+#X obj 328 469 pack 0 50;
+#X obj 328 443 / 100;
+#X obj 312 519 *~;
+#X obj 503 493 line~;
+#X obj 503 467 pack 0 50;
+#X obj 503 441 / 100;
+#X obj 487 517 *~;
+#X obj 79 451 r~ \$0-Out_Op1;
+#X obj 249 452 r~ \$0-Out_Op2;
+#X obj 436 468 r~ \$0-Out_Op3;
+#X obj 267 496 z~ 1;
+#X obj 437 494 z~ 1;
+#X obj 136 543 throw~ In_op3;
+#X obj 311 540 throw~ In_op3;
+#X obj 488 543 throw~ In_op3;
+#X obj 149 377 throw~ In_op2;
+#X obj 325 378 throw~ In_op2;
+#X obj 503 377 throw~ In_op2;
+#X obj 79 477 z~ 1;
+#X obj 152 422 r \$0-op1->op3;
+#X obj 328 419 r \$0-op2->op3;
+#X obj 503 417 r \$0-op3->op3;
+#X obj 165 256 r \$0-op1->op2;
+#X obj 341 253 r \$0-op2->op2;
+#X obj 516 251 r \$0-op3->op2;
+#X obj 181 106 r \$0-op1->op1;
+#X obj 357 103 r \$0-op2->op1;
+#X obj 532 101 r \$0-op3->op1;
+#X connect 0 0 3 1;
+#X connect 1 0 0 0;
+#X connect 2 0 1 0;
+#X connect 3 0 12 0;
+#X connect 4 0 7 1;
+#X connect 5 0 4 0;
+#X connect 6 0 5 0;
+#X connect 7 0 13 0;
+#X connect 8 0 11 1;
+#X connect 9 0 8 0;
+#X connect 10 0 9 0;
+#X connect 11 0 14 0;
+#X connect 15 0 18 0;
+#X connect 16 0 19 0;
+#X connect 17 0 20 0;
+#X connect 18 0 3 0;
+#X connect 19 0 7 0;
+#X connect 20 0 11 0;
+#X connect 21 0 24 1;
+#X connect 22 0 21 0;
+#X connect 23 0 22 0;
+#X connect 24 0 59 0;
+#X connect 25 0 28 1;
+#X connect 26 0 25 0;
+#X connect 27 0 26 0;
+#X connect 28 0 60 0;
+#X connect 29 0 32 1;
+#X connect 30 0 29 0;
+#X connect 31 0 30 0;
+#X connect 32 0 61 0;
+#X connect 33 0 36 0;
+#X connect 34 0 37 0;
+#X connect 35 0 38 0;
+#X connect 36 0 24 0;
+#X connect 37 0 28 0;
+#X connect 38 0 32 0;
+#X connect 39 0 42 1;
+#X connect 40 0 39 0;
+#X connect 41 0 40 0;
+#X connect 42 0 56 0;
+#X connect 43 0 46 1;
+#X connect 44 0 43 0;
+#X connect 45 0 44 0;
+#X connect 46 0 57 0;
+#X connect 47 0 50 1;
+#X connect 48 0 47 0;
+#X connect 49 0 48 0;
+#X connect 50 0 58 0;
+#X connect 51 0 62 0;
+#X connect 52 0 54 0;
+#X connect 53 0 55 0;
+#X connect 54 0 46 0;
+#X connect 55 0 50 0;
+#X connect 62 0 42 0;
+#X connect 63 0 41 0;
+#X connect 64 0 45 0;
+#X connect 65 0 49 0;
+#X connect 66 0 23 0;
+#X connect 67 0 27 0;
+#X connect 68 0 31 0;
+#X connect 69 0 2 0;
+#X connect 70 0 6 0;
+#X connect 71 0 10 0;
+#X coords 0 0 0.000952381 0.00111111 120 20 0;
+#X restore 739 301 pd FM_Feedback;
+#X obj 414 219 catch~ \$0-out;
+#X obj 0 19 cnv 30 244 180 empty empty empty 20 12 0 14 -166441 -66577
+0;
+#X obj 136 178 cnv 10 40 1 \$0-r_Op1OutCanvash \$0-s_Op1OutCanvash
+empty 20 12 1728 14 -33289 -262144 0;
+#X obj 120 172 cnv 12 38 16 empty \$0-s_Op1OutCanvash empty 4 6 576
+8 -33289 -262144 0;
+#X obj 121 173 nbx 3 14 0 100 0 0 \$0-outAmt_1 \$0-send-outAmt_1 empty
+0 -6 1728 10 -166441 -1 -1 31 256;
+#X obj 78 130 cnv 15 1 50 \$0-r_Op2OutCanvas \$0-s_Op2OutCanvas empty
+20 12 1728 14 -33289 -262144 0;
+#X obj 80 178 cnv 10 40 1 \$0-r_Op2OutCanvash \$0-s_Op2OutCanvash empty
+20 12 1728 14 -33289 -262144 0;
+#X obj 68 172 cnv 12 38 16 empty \$0-s_Op2OutCanvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 69 173 nbx 3 14 0 100 0 0 \$0-outAmt_2 \$0-send-outAmt_2 empty
+0 -6 1728 10 -166441 -1 -1 84 256;
+#X obj 28 178 cnv 10 40 1 \$0-r_Op3OutCanvash \$0-s_Op3OutCanvash empty
+20 12 1728 14 -166441 -262144 0;
+#X obj 25 30 cnv 12 40 22 empty \$0-s_Op3FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 27 32 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+0;
+#X obj 13 22 cnv 12 34 16 empty \$0-s_Op3FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 14 23 nbx 3 14 0 100 0 0 \$0-op3->op3 \$0-send-op3->op3 empty
+0 -6 1728 8 -166441 -1 -1 0 256;
+#X obj 25 42 cnv 15 1 50 \$0-r_Op3Op2 \$0-s_Op3Op2 empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 177 171 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 179 173 cnv 12 38 14 empty empty Out 10 7 0 8 -195568 -66577
+0;
+#X obj 25 130 cnv 15 1 50 \$0-r_Op3OutCanvas \$0-s_Op3OutCanvas empty
+20 12 1728 14 -166441 -262144 0;
+#X obj 16 172 cnv 12 38 16 empty \$0-s_Op3OutCanvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 17 173 nbx 3 14 0 100 0 0 \$0-outAmt_3 \$0-send-outAmt_3 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 26 87 cnv 10 40 1 \$0-r_Op3Op2h \$0-s_Op3Op2h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 28 135 cnv 10 40 1 \$0-r_Op3Op1h \$0-s_Op3Op1h empty 20 12 1728
+14 -166441 -262144 0;
+#X obj 25 82 cnv 15 1 50 \$0-r_Op3Op2_2 \$0-s_Op3Op2_2 empty 20 12
+1728 14 -166441 -262144 0;
+#X obj 15 81 cnv 12 38 16 empty \$0-s_Op3Op2Canvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 16 82 nbx 3 14 0 100 0 0 \$0-op3->op2 \$0-send-op3->op2 empty
+0 -6 1728 10 -166441 -1 -1 87 256;
+#X obj 15 129 cnv 12 38 16 empty \$0-s_Op3Op1Canvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 16 130 nbx 3 14 0 100 0 0 \$0-op3->op1 \$0-send-op3->op1 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 88 135 cnv 10 30 1 \$0-r_Op2Op1h \$0-s_Op2Op1h empty 20 12 1728
+14 -166441 -262144 0;
+#X obj 68 129 cnv 12 38 16 empty \$0-s_Op2Op1Canvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 69 130 nbx 3 14 0 100 0 0 \$0-op2->op1 \$0-send-op2->op1 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 131 81 cnv 15 1 50 \$0-r_Op1Op2 \$0-s_Op1Op2 empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 120 81 cnv 12 38 16 empty \$0-s_Op1Op2Canvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 121 82 nbx 3 14 0 100 0 0 \$0-op1->op2 \$0-send-op1->op2 empty
+0 -6 1728 10 -166441 -1 -1 12 256;
+#X obj 131 131 cnv 15 1 40 \$0-r_Op1OutCanvas \$0-s_Op1OutCanvas empty
+20 12 1728 14 -33289 -262144 0;
+#X obj 131 118 cnv 12 40 22 empty \$0-s_Op1FBCanvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 133 120 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+0;
+#X obj 119 128 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 121 130 cnv 12 38 14 empty empty Op_1 4 6 0 8 -233017 -66577
+0;
+#X obj 119 110 cnv 12 34 16 empty \$0-s_Op1FBCanvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 120 111 nbx 3 14 0 100 0 0 \$0-op1->op1 \$0-send-op1->op1 empty
+0 -6 1728 8 -166441 -1 -1 15 256;
+#X obj 78 70 cnv 12 40 22 empty \$0-s_Op2FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 80 72 cnv 12 36 18 empty empty empty 4 6 0 8 -166441 -262144
+0;
+#X obj 66 62 cnv 12 34 16 empty \$0-s_Op2FBCanvas empty 4 6 576 8 -166441
+-262144 0;
+#X obj 67 63 nbx 3 14 0 100 0 0 \$0-op2->op2 \$0-send-op2->op2 empty
+0 -6 1728 8 -166441 -1 -1 0 256;
+#X obj 78 82 cnv 15 1 46 \$0-r_Op2Op1 \$0-s_Op2Op1 empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 90 88 cnv 10 30 1 \$0-r_Op1Op2h \$0-s_Op1Op2h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 66 80 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 68 82 cnv 12 38 14 empty empty Op_2 4 6 0 8 -233017 -66577 0
+;
+#X obj 121 37 cnv 12 38 16 empty \$0-s_Op1Op3Canvas empty 4 6 576 8
+-33289 -262144 0;
+#X obj 131 38 cnv 15 1 42 \$0-r_Op1Op3_1 \$0-s_Op1Op3_1 empty 20 12
+1728 14 -33289 -262144 0;
+#X obj 122 38 nbx 3 14 0 100 0 0 \$0-op1->op3 \$0-send-op1->op3 empty
+0 -6 1728 10 -166441 -1 -1 7 256;
+#X obj 36 42 cnv 10 32 1 \$0-r_Op2Op3h \$0-s_Op2Op3h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 90 42 cnv 10 30 1 \$0-r_Op1Op3h \$0-s_Op1Op3h empty 20 12 1728
+14 -33289 -262144 0;
+#X obj 68 37 cnv 12 38 16 empty \$0-s_Op2Op3Canvas empty 4 6 576 8
+-166441 -262144 0;
+#X obj 78 37 cnv 15 1 24 \$0-r_Op2Op3 \$0-s_Op2Op3 empty 20 12 1728
+14 -166441 -262144 0;
+#X obj 69 38 nbx 3 14 0 100 0 0 \$0-op2->op3 \$0-send-op2->op3 empty
+0 -6 1728 10 -166441 -1 -1 0 256;
+#X obj 12 40 cnv 12 42 18 empty empty empty 4 6 0 8 -1 -66577 0;
+#X obj 14 42 cnv 12 38 14 empty empty Op_3 4 6 0 8 -233017 -66577 0
+;
+#X obj 178 148 bng 15 250 50 0 \$0-r_RsFB \$0-s_RsFB Reset 0 -6 1728
+8 -262144 -1 -1;
+#N canvas 536 352 858 576 feedbacksReset 0;
+#X obj 215 122 s \$0-send-op1->op1;
+#X obj 327 122 s \$0-send-op2->op1;
+#X obj 440 123 s \$0-send-op3->op1;
+#X obj 224 187 s \$0-send-op3->op3;
+#X obj 336 188 s \$0-send-op3->op2;
+#X obj 210 260 s \$0-send-op1->op3;
+#X obj 322 261 s \$0-send-op2->op2;
+#X obj 439 263 s \$0-send-op1->op2;
+#X obj 556 264 s \$0-send-op2->op3;
+#X obj 197 320 s \$0-send-outAmt_1;
+#X obj 197 349 s \$0-send-outAmt_2;
+#X obj 207 388 s \$0-send-outAmt_3;
+#X obj 421 48 r \$0-r_RsFB;
+#X msg 420 69 0;
+#X connect 12 0 13 0;
+#X connect 13 0 0 0;
+#X connect 13 0 1 0;
+#X connect 13 0 2 0;
+#X connect 13 0 4 0;
+#X connect 13 0 3 0;
+#X connect 13 0 5 0;
+#X connect 13 0 6 0;
+#X connect 13 0 7 0;
+#X connect 13 0 8 0;
+#X connect 13 0 9 0;
+#X connect 13 0 10 0;
+#X connect 13 0 11 0;
+#X restore 739 280 pd feedbacksReset;
+#N canvas 0 0 1267 910 feedback_Matrix_GUI 0;
+#X obj 30 38 moses 1;
+#X msg 30 69 color 1 0;
+#X msg 101 67 color 12 0;
+#X obj 30 97 s \$0-s_Op1FBCanvas;
+#X obj 30 9 r \$0-op1->op1;
+#X obj 173 36 moses 1;
+#X msg 173 67 color 1 0;
+#X msg 244 65 color 12 0;
+#X obj 173 6 r \$0-op2->op2;
+#X obj 173 95 s \$0-s_Op2FBCanvas;
+#X obj 314 34 moses 1;
+#X msg 314 65 color 1 0;
+#X msg 385 63 color 12 0;
+#X obj 314 4 r \$0-op3->op3;
+#X obj 314 93 s \$0-s_Op3FBCanvas;
+#X obj 727 102 s \$0-s_Op1OutCanvas;
+#X obj 607 102 s \$0-s_Op2OutCanvas;
+#X obj 476 102 s \$0-s_Op3OutCanvas;
+#X obj 476 6 r \$0-outAmt_3;
+#X obj 607 6 r \$0-outAmt_2;
+#X obj 727 5 r \$0-outAmt_1;
+#X msg 644 81 color 12 0;
+#X msg 607 59 color 1 0;
+#X obj 607 30 moses 1;
+#X msg 764 80 color 12 0;
+#X msg 727 58 color 1 0;
+#X obj 727 29 moses 1;
+#X msg 513 81 color 12 0;
+#X msg 476 59 color 1 0;
+#X obj 476 30 moses 1;
+#X msg 73 448 color 12 0;
+#X obj 315 526 s \$0-s_Op1OutCanvash;
+#X obj 78 201 r \$0-outAmt_3;
+#X obj 78 225 >= 1;
+#X obj 73 290 spigot;
+#X obj 78 260 t b f;
+#X obj 204 549 s \$0-s_Op2OutCanvash;
+#X obj 73 576 s \$0-s_Op3OutCanvash;
+#X msg 204 448 color 12 0;
+#X obj 209 225 >= 1;
+#X obj 204 290 spigot;
+#X obj 209 260 t b f;
+#X obj 209 201 r \$0-outAmt_2;
+#X msg 315 447 color 12 0;
+#X obj 320 224 >= 1;
+#X obj 315 289 spigot;
+#X obj 320 259 t b f;
+#X obj 320 200 r \$0-outAmt_1;
+#X obj 17 286 == 0;
+#X obj 17 388 spigot;
+#X obj 17 360 t b f;
+#X msg 17 411 color 1 0;
+#X obj 143 316 == 0;
+#X obj 143 363 spigot;
+#X obj 273 295 == 0;
+#X obj 273 342 spigot;
+#X obj 560 187 r \$0-outAmt_3;
+#X obj 597 376 s \$0-s_Op3Op2_2;
+#X obj 784 463 s \$0-s_Op3Op2;
+#X msg 597 332 color 12 0;
+#X msg 524 332 color 1 0;
+#X obj 530 249 == 0;
+#X obj 524 307 spigot;
+#X obj 675 187 r \$0-op3->op1;
+#X obj 530 270 t b f;
+#X obj 560 210 >= 1;
+#X obj 597 281 spigot;
+#X obj 597 245 t b f;
+#X obj 675 218 >= 1;
+#X obj 712 291 spigot;
+#X obj 712 253 t b f;
+#X obj 676 252 == 0;
+#X obj 524 359 spigot;
+#X obj 784 184 r \$0-op3->op2;
+#X obj 582 404 s \$0-s_Op3Op2;
+#X obj 784 216 >= 1;
+#X msg 784 273 color 12 0;
+#X obj 784 254 spigot;
+#X obj 784 235 t b f;
+#X obj 756 309 == 0;
+#X msg 750 429 color 1 0;
+#X obj 750 351 spigot;
+#X obj 756 330 t b f;
+#X obj 750 382 spigot;
+#X obj 750 406 spigot;
+#X obj 883 113 s \$0-s_Op3Op2h;
+#X obj 884 7 r \$0-op3->op2;
+#X msg 920 81 color 12 0;
+#X msg 883 59 color 1 0;
+#X obj 883 30 moses 1;
+#X obj 882 148 s \$0-s_Op3Op2Canvas;
+#X msg 1049 81 color 12 0;
+#X msg 1012 59 color 1 0;
+#X obj 1012 30 moses 1;
+#X obj 1013 7 r \$0-op3->op1;
+#X obj 1012 150 s \$0-s_Op3Op1Canvas;
+#X obj 1014 113 s \$0-s_Op3Op1h;
+#X msg 1318 122 color 12 0;
+#X msg 1281 87 color 1 0;
+#X obj 1281 58 moses 1;
+#X obj 1281 33 r \$0-op2->op3;
+#X obj 1281 151 s \$0-s_Op2Op3Canvas;
+#X obj 143 339 t b f;
+#X obj 273 319 t b f;
+#X msg 167 500 color 1 0;
+#X obj 143 416 spigot;
+#X obj 273 388 spigot;
+#X obj 273 418 spigot;
+#X msg 287 489 color 1 0;
+#X obj 406 598 r \$0-op3->op1;
+#X obj 112 596 r \$0-outAmt_2;
+#X obj 112 803 s \$0-s_Op2Op1;
+#X obj 262 596 r \$0-op2->op1;
+#X obj 262 628 >= 1;
+#X msg 262 705 color 12 0;
+#X obj 262 686 spigot;
+#X obj 262 667 t b f;
+#X obj 112 628 >= 1;
+#X msg 112 705 color 12 0;
+#X obj 112 686 spigot;
+#X obj 112 667 t b f;
+#X obj 262 802 s \$0-s_Op2Op1h;
+#X obj 406 631 >= 1;
+#X msg 406 708 color 12 0;
+#X obj 406 689 spigot;
+#X obj 406 670 t b f;
+#X obj 48 669 == 0;
+#X obj 207 667 == 0;
+#X obj 367 667 == 0;
+#X msg 33 778 color 1 0;
+#X obj 33 731 spigot;
+#X obj 33 755 spigot;
+#X obj 33 704 t b f;
+#X obj 207 697 t b f;
+#X msg 207 779 color 1 0;
+#X obj 207 732 spigot;
+#X obj 207 756 spigot;
+#X obj 366 699 t b f;
+#X obj 1120 638 s \$0-s_Op2Op1Canvas;
+#X obj 1120 520 r \$0-op2->op1;
+#X msg 1157 609 color 12 0;
+#X msg 1120 574 color 1 0;
+#X obj 1120 545 moses 1;
+#X obj 1005 551 r \$0-op1->op2;
+#X msg 1034 633 color 12 0;
+#X msg 1006 604 color 1 0;
+#X obj 1006 575 moses 1;
+#X obj 1005 709 s \$0-s_Op1Op2h;
+#X obj 553 519 r \$0-op1->op3;
+#X obj 766 568 r \$0-op2->op3;
+#X obj 646 518 r \$0-op1->op2;
+#X obj 588 775 s \$0-s_Op1Op2;
+#X obj 1035 679 s \$0-s_Op1Op2Canvas;
+#X msg 908 614 color 12 0;
+#X msg 875 586 color 1 0;
+#X obj 875 557 moses 1;
+#X obj 875 650 s \$0-s_Op1Op3Canvas;
+#X obj 875 532 r \$0-op1->op3;
+#X obj 901 714 s \$0-s_Op1Op3_1;
+#X obj 549 552 >= 1;
+#X msg 549 629 color 12 0;
+#X obj 549 610 spigot;
+#X obj 549 591 t b f;
+#X obj 645 554 >= 1;
+#X msg 645 631 color 12 0;
+#X obj 645 612 spigot;
+#X obj 646 593 t b f;
+#X obj 507 554 == 0;
+#X msg 588 689 color 1 0;
+#X obj 500 611 spigot;
+#X obj 588 666 spigot;
+#X obj 507 580 t b f;
+#X obj 607 582 t b f;
+#X obj 608 561 == 0;
+#X msg 799 650 color 12 0;
+#X msg 766 622 color 1 0;
+#X obj 766 593 moses 1;
+#X obj 764 686 s \$0-s_Op2Op3Canvas;
+#X obj 748 711 s \$0-s_Op2Op3;
+#X obj 1074 461 s \$0-s_Op1Op3h;
+#X obj 931 476 s \$0-s_Op2Op3h;
+#X obj 934 230 r \$0-op2->op3;
+#X obj 931 275 >= 1;
+#X msg 931 352 color 12 0;
+#X obj 931 333 spigot;
+#X obj 931 314 t b f;
+#X obj 1078 237 r \$0-op1->op3;
+#X obj 1074 270 >= 1;
+#X msg 1074 347 color 12 0;
+#X obj 1074 328 spigot;
+#X obj 1074 309 t b f;
+#X obj 1031 299 == 0;
+#X obj 1031 325 t b f;
+#X msg 1031 423 color 1 0;
+#X obj 1029 375 spigot;
+#X obj 885 303 == 0;
+#X obj 885 329 t b f;
+#X obj 883 403 spigot;
+#X msg 948 436 color 1 0;
+#X connect 0 0 1 0;
+#X connect 0 1 2 0;
+#X connect 1 0 3 0;
+#X connect 2 0 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 6 0;
+#X connect 5 1 7 0;
+#X connect 6 0 9 0;
+#X connect 7 0 9 0;
+#X connect 8 0 5 0;
+#X connect 10 0 11 0;
+#X connect 10 1 12 0;
+#X connect 11 0 14 0;
+#X connect 12 0 14 0;
+#X connect 13 0 10 0;
+#X connect 18 0 29 0;
+#X connect 19 0 23 0;
+#X connect 20 0 26 0;
+#X connect 21 0 16 0;
+#X connect 22 0 16 0;
+#X connect 23 0 22 0;
+#X connect 23 1 21 0;
+#X connect 24 0 15 0;
+#X connect 25 0 15 0;
+#X connect 26 0 25 0;
+#X connect 26 1 24 0;
+#X connect 27 0 17 0;
+#X connect 28 0 17 0;
+#X connect 29 0 28 0;
+#X connect 29 1 27 0;
+#X connect 30 0 31 0;
+#X connect 30 0 36 0;
+#X connect 30 0 37 0;
+#X connect 32 0 33 0;
+#X connect 33 0 35 0;
+#X connect 33 0 48 0;
+#X connect 34 0 30 0;
+#X connect 35 0 34 0;
+#X connect 35 1 34 1;
+#X connect 38 0 31 0;
+#X connect 38 0 36 0;
+#X connect 39 0 41 0;
+#X connect 39 0 52 0;
+#X connect 40 0 38 0;
+#X connect 41 0 40 0;
+#X connect 41 1 40 1;
+#X connect 42 0 39 0;
+#X connect 43 0 31 0;
+#X connect 44 0 46 0;
+#X connect 44 0 54 0;
+#X connect 45 0 43 0;
+#X connect 46 0 45 0;
+#X connect 46 1 45 1;
+#X connect 47 0 44 0;
+#X connect 48 0 50 0;
+#X connect 49 0 51 0;
+#X connect 50 0 49 0;
+#X connect 50 0 53 0;
+#X connect 50 0 55 0;
+#X connect 50 1 49 1;
+#X connect 50 1 105 1;
+#X connect 50 1 107 1;
+#X connect 51 0 37 0;
+#X connect 52 0 102 0;
+#X connect 53 0 105 0;
+#X connect 54 0 103 0;
+#X connect 55 0 106 0;
+#X connect 56 0 65 0;
+#X connect 59 0 57 0;
+#X connect 59 0 74 0;
+#X connect 60 0 72 0;
+#X connect 61 0 64 0;
+#X connect 61 0 82 0;
+#X connect 62 0 60 0;
+#X connect 63 0 68 0;
+#X connect 64 0 62 0;
+#X connect 64 1 62 1;
+#X connect 64 1 83 1;
+#X connect 65 0 67 0;
+#X connect 65 0 61 0;
+#X connect 66 0 59 0;
+#X connect 67 0 66 0;
+#X connect 67 1 66 1;
+#X connect 68 0 70 0;
+#X connect 68 0 71 0;
+#X connect 69 0 59 0;
+#X connect 70 0 69 0;
+#X connect 70 1 69 1;
+#X connect 71 0 72 1;
+#X connect 71 0 64 0;
+#X connect 71 0 84 1;
+#X connect 71 0 82 0;
+#X connect 72 0 57 0;
+#X connect 73 0 75 0;
+#X connect 75 0 78 0;
+#X connect 75 0 79 0;
+#X connect 76 0 58 0;
+#X connect 77 0 76 0;
+#X connect 78 0 77 0;
+#X connect 78 1 77 1;
+#X connect 79 0 82 0;
+#X connect 80 0 58 0;
+#X connect 81 0 83 0;
+#X connect 82 0 81 0;
+#X connect 82 1 81 1;
+#X connect 83 0 84 0;
+#X connect 84 0 80 0;
+#X connect 86 0 89 0;
+#X connect 87 0 85 0;
+#X connect 87 0 90 0;
+#X connect 88 0 85 0;
+#X connect 88 0 90 0;
+#X connect 89 0 88 0;
+#X connect 89 1 87 0;
+#X connect 91 0 95 0;
+#X connect 91 0 96 0;
+#X connect 92 0 95 0;
+#X connect 92 0 96 0;
+#X connect 93 0 92 0;
+#X connect 93 1 91 0;
+#X connect 94 0 93 0;
+#X connect 97 0 101 0;
+#X connect 98 0 101 0;
+#X connect 99 0 98 0;
+#X connect 99 1 97 0;
+#X connect 100 0 99 0;
+#X connect 102 0 53 0;
+#X connect 102 0 55 0;
+#X connect 102 1 53 1;
+#X connect 102 1 106 1;
+#X connect 103 0 55 0;
+#X connect 103 1 55 1;
+#X connect 104 0 36 0;
+#X connect 105 0 104 0;
+#X connect 106 0 107 0;
+#X connect 107 0 108 0;
+#X connect 108 0 31 0;
+#X connect 109 0 122 0;
+#X connect 110 0 117 0;
+#X connect 112 0 113 0;
+#X connect 113 0 116 0;
+#X connect 113 0 127 0;
+#X connect 114 0 111 0;
+#X connect 114 0 121 0;
+#X connect 115 0 114 0;
+#X connect 116 0 115 0;
+#X connect 116 1 115 1;
+#X connect 117 0 120 0;
+#X connect 117 0 126 0;
+#X connect 118 0 111 0;
+#X connect 119 0 118 0;
+#X connect 120 0 119 0;
+#X connect 120 1 119 1;
+#X connect 122 0 125 0;
+#X connect 122 0 128 0;
+#X connect 123 0 121 0;
+#X connect 124 0 123 0;
+#X connect 125 0 124 0;
+#X connect 125 1 124 1;
+#X connect 126 0 132 0;
+#X connect 127 0 133 0;
+#X connect 128 0 137 0;
+#X connect 129 0 111 0;
+#X connect 130 0 131 0;
+#X connect 131 0 129 0;
+#X connect 132 0 130 0;
+#X connect 132 1 130 1;
+#X connect 133 0 130 0;
+#X connect 133 0 135 0;
+#X connect 133 1 131 1;
+#X connect 133 1 135 1;
+#X connect 134 0 121 0;
+#X connect 135 0 136 0;
+#X connect 136 0 134 0;
+#X connect 137 0 135 0;
+#X connect 137 1 136 1;
+#X connect 139 0 142 0;
+#X connect 140 0 138 0;
+#X connect 141 0 138 0;
+#X connect 142 0 141 0;
+#X connect 142 1 140 0;
+#X connect 143 0 146 0;
+#X connect 144 0 147 0;
+#X connect 144 0 152 0;
+#X connect 145 0 147 0;
+#X connect 145 0 152 0;
+#X connect 146 0 145 0;
+#X connect 146 1 144 0;
+#X connect 148 0 159 0;
+#X connect 149 0 176 0;
+#X connect 150 0 163 0;
+#X connect 153 0 156 0;
+#X connect 153 0 158 0;
+#X connect 154 0 156 0;
+#X connect 154 0 158 0;
+#X connect 155 0 154 0;
+#X connect 155 1 153 0;
+#X connect 157 0 155 0;
+#X connect 159 0 162 0;
+#X connect 159 0 167 0;
+#X connect 160 0 151 0;
+#X connect 161 0 160 0;
+#X connect 162 0 161 0;
+#X connect 162 1 161 1;
+#X connect 163 0 166 0;
+#X connect 163 0 173 0;
+#X connect 164 0 151 0;
+#X connect 165 0 164 0;
+#X connect 166 0 165 0;
+#X connect 166 1 165 1;
+#X connect 167 0 171 0;
+#X connect 168 0 151 0;
+#X connect 169 0 170 0;
+#X connect 170 0 168 0;
+#X connect 171 0 169 0;
+#X connect 171 1 169 1;
+#X connect 172 0 169 0;
+#X connect 172 1 170 1;
+#X connect 173 0 172 0;
+#X connect 174 0 177 0;
+#X connect 174 0 178 0;
+#X connect 175 0 177 0;
+#X connect 175 0 178 0;
+#X connect 176 0 175 0;
+#X connect 176 1 174 0;
+#X connect 181 0 182 0;
+#X connect 182 0 185 0;
+#X connect 182 0 195 0;
+#X connect 183 0 180 0;
+#X connect 184 0 183 0;
+#X connect 185 0 184 0;
+#X connect 185 1 184 1;
+#X connect 186 0 187 0;
+#X connect 187 0 190 0;
+#X connect 187 0 191 0;
+#X connect 188 0 179 0;
+#X connect 188 0 180 0;
+#X connect 189 0 188 0;
+#X connect 190 0 189 0;
+#X connect 190 1 189 1;
+#X connect 191 0 192 0;
+#X connect 192 0 194 0;
+#X connect 192 1 194 1;
+#X connect 193 0 179 0;
+#X connect 194 0 193 0;
+#X connect 194 0 197 0;
+#X connect 195 0 196 0;
+#X connect 196 0 194 0;
+#X connect 196 1 197 1;
+#X connect 197 0 198 0;
+#X connect 198 0 180 0;
+#X restore 740 259 pd feedback_Matrix_GUI;
+#N canvas 0 0 452 302 FM_Pitch 0;
+#X floatatom 278 194 5 0 0 0 Op2_Pitch - -;
+#X floatatom 452 182 5 0 0 0 Op3_Pitch - -;
+#X obj 452 129 line;
+#X obj 453 108 pack \$1 f;
+#X obj 454 67 bang;
+#X floatatom 502 67 5 0 0 0 - - -;
+#X obj 453 88 random 500;
+#X obj 279 145 line;
+#X obj 280 124 pack \$1 f;
+#X obj 281 83 bang;
+#X floatatom 378 116 5 0 0 0 - - -;
+#X obj 280 104 random 500;
+#X floatatom 372 92 5 0 0 0 - - -;
+#X floatatom 537 108 5 0 0 0 - - -;
+#X obj 20 70 mtof;
+#X obj 19 238 line;
+#X obj 21 216 pack \$1 f;
+#X obj 21 196 random 500;
+#X obj 21 95 t b f;
+#X floatatom 95 179 5 0 0 0 - - -;
+#X obj 5 269 s \$0-pitch_Op1;
+#X obj 258 238 s \$0-pitch_Op2;
+#X obj 422 221 s \$0-pitch_Op3;
+#X obj 452 47 r \$0-NoteVel;
+#X obj 283 63 r \$0-NoteVel;
+#X obj 35 16 r \$0-NotePitch;
+#X floatatom 126 243 5 0 0 0 - - -;
+#X obj 452 152 + 2000;
+#X obj 76 156 / 5;
+#X obj 38 44 moses 1;
+#X obj 278 171 + 30;
+#X floatatom 239 99 5 0 0 0 - - -;
+#X floatatom 161 102 5 0 0 0 - - -;
+#X connect 2 0 27 0;
+#X connect 3 0 2 0;
+#X connect 4 0 6 0;
+#X connect 5 0 3 1;
+#X connect 6 0 3 0;
+#X connect 7 0 30 0;
+#X connect 8 0 7 0;
+#X connect 9 0 11 0;
+#X connect 10 0 8 1;
+#X connect 11 0 8 0;
+#X connect 12 0 11 1;
+#X connect 13 0 6 1;
+#X connect 13 0 27 1;
+#X connect 14 0 18 0;
+#X connect 14 0 20 0;
+#X connect 15 0 26 0;
+#X connect 16 0 15 0;
+#X connect 17 0 16 0;
+#X connect 18 0 17 0;
+#X connect 18 1 28 0;
+#X connect 19 0 16 1;
+#X connect 23 0 4 0;
+#X connect 23 0 22 0;
+#X connect 24 0 9 0;
+#X connect 24 0 21 0;
+#X connect 25 0 29 0;
+#X connect 27 0 1 0;
+#X connect 28 0 17 1;
+#X connect 29 1 14 0;
+#X connect 29 1 32 0;
+#X connect 30 0 0 0;
+#X restore 740 325 pd FM_Pitch;
+#X obj 768 39 loadbang;
+#X obj 768 77 s \$0-s_RsFB;
+#X text 463 291 And Envelopes (op1 \, op2 \, op3) -->;
+#N canvas 0 0 1102 748 sound-engine 0;
+#X obj 56 190 cos~;
+#X obj 56 166 +~;
+#X obj 56 121 phasor~;
+#X obj 226 191 cos~;
+#X obj 227 171 +~;
+#X obj 228 128 phasor~;
+#X obj 422 190 cos~;
+#X obj 423 170 +~;
+#X obj 424 122 phasor~;
+#X obj 66 242 sig~;
+#X obj 54 269 vcf~;
+#X floatatom 76 215 5 0 0 0 op1_FiltFeq - -;
+#X floatatom 116 224 5 0 0 0 op1_filtQ - -;
+#X obj 235 240 sig~;
+#X obj 226 265 vcf~;
+#X floatatom 235 211 5 0 0 0 op1_FiltFeq - -;
+#X floatatom 295 223 5 0 5 0 op1_filtQ - -;
+#X obj 432 240 sig~;
+#X obj 423 265 vcf~;
+#X floatatom 432 211 5 0 0 0 op1_FiltFeq - -;
+#X floatatom 494 224 5 0 0 0 op1_filtQ - -;
+#X obj 68 141 catch~ In_op1;
+#X obj 240 148 catch~ In_op2;
+#X obj 436 142 catch~ In_op3;
+#X obj 53 399 send~ \$0-Out_Op1;
+#X obj 225 395 send~ \$0-Out_Op2;
+#X obj 422 396 send~ \$0-Out_Op3;
+#N canvas 0 107 1011 691 AD 0;
+#X obj 432 149 inlet;
+#X obj 430 629 outlet~;
+#X obj 597 145 inlet;
+#X obj 818 164 inlet;
+#X obj 432 192 t b f;
+#X obj 432 399 t3_bpe;
+#X obj 432 334 t b b;
+#X obj 432 429 t3_line~ 0;
+#X obj 432 367 f 0.04;
+#X floatatom 469 283 5 0 0 0 - - -;
+#X obj 488 381 pack 0 0 1 1.5 1 0.5 0 1.5;
+#X text 525 268 pre-delay;
+#X floatatom 597 282 5 0 0 0 - - -;
+#X text 653 267 attack;
+#X floatatom 705 281 5 0 0 0 - - -;
+#X text 748 283 Samples;
+#X text 761 266 sustain;
+#X floatatom 818 278 5 0 0 0 - - -;
+#X text 861 280 Samples;
+#X text 874 263 release;
+#X msg 548 412 set _lin;
+#X msg 548 433 set _linsqrt;
+#X msg 548 454 set _sqrt;
+#X msg 548 474 set _sin;
+#X msg 549 495 set _sinhann;
+#X msg 549 517 set _hann;
+#X msg 350 346 stop;
+#X obj 432 534 fade~ _sin;
+#X connect 0 0 4 0;
+#X connect 2 0 12 0;
+#X connect 3 0 17 0;
+#X connect 4 0 6 0;
+#X connect 4 1 14 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 8 0;
+#X connect 6 1 10 0;
+#X connect 7 0 27 0;
+#X connect 8 0 5 0;
+#X connect 9 0 8 1;
+#X connect 10 0 5 0;
+#X connect 12 0 10 3;
+#X connect 14 0 10 5;
+#X connect 17 0 10 7;
+#X connect 20 0 27 0;
+#X connect 21 0 27 0;
+#X connect 22 0 27 0;
+#X connect 23 0 27 0;
+#X connect 24 0 27 0;
+#X connect 25 0 27 0;
+#X connect 26 0 5 0;
+#X connect 27 0 1 0;
+#X restore 735 295 pd AD;
+#X floatatom 823 231 5 0 0 0 - - -;
+#X obj 54 317 *~;
+#X obj 226 312 *~;
+#X obj 422 318 *~;
+#X obj 67 291 r~ \$0-env_1;
+#X obj 735 314 s~ \$0-env_1;
+#X obj 824 314 s~ \$0-env_2;
+#X obj 924 315 s~ \$0-env_3;
+#X obj 253 288 r~ \$0-env_2;
+#X obj 457 294 r~ \$0-env_3;
+#X obj 787 169 moses 1;
+#X obj 55 98 sig~;
+#N canvas 0 107 1011 691 AD 0;
+#X obj 432 149 inlet;
+#X obj 430 629 outlet~;
+#X obj 597 145 inlet;
+#X obj 818 164 inlet;
+#X obj 432 192 t b f;
+#X obj 432 399 t3_bpe;
+#X obj 432 334 t b b;
+#X obj 432 429 t3_line~ 0;
+#X obj 432 367 f 0.04;
+#X floatatom 469 283 5 0 0 0 - - -;
+#X obj 488 381 pack 0 0 1 1.5 1 0.5 0 1.5;
+#X text 525 268 pre-delay;
+#X floatatom 597 282 5 0 0 0 - - -;
+#X text 653 267 attack;
+#X floatatom 705 281 5 0 0 0 - - -;
+#X text 748 283 Samples;
+#X text 761 266 sustain;
+#X floatatom 818 278 5 0 0 0 - - -;
+#X text 861 280 Samples;
+#X text 874 263 release;
+#X msg 548 412 set _lin;
+#X msg 548 433 set _linsqrt;
+#X msg 548 454 set _sqrt;
+#X msg 548 474 set _sin;
+#X msg 549 495 set _sinhann;
+#X msg 549 517 set _hann;
+#X msg 350 346 stop;
+#X obj 432 534 fade~ _sin;
+#X connect 0 0 4 0;
+#X connect 2 0 12 0;
+#X connect 3 0 17 0;
+#X connect 4 0 6 0;
+#X connect 4 1 14 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 8 0;
+#X connect 6 1 10 0;
+#X connect 7 0 27 0;
+#X connect 8 0 5 0;
+#X connect 9 0 8 1;
+#X connect 10 0 5 0;
+#X connect 12 0 10 3;
+#X connect 14 0 10 5;
+#X connect 17 0 10 7;
+#X connect 20 0 27 0;
+#X connect 21 0 27 0;
+#X connect 22 0 27 0;
+#X connect 23 0 27 0;
+#X connect 24 0 27 0;
+#X connect 25 0 27 0;
+#X connect 26 0 5 0;
+#X connect 27 0 1 0;
+#X restore 824 295 pd AD;
+#X obj 823 211 * 100;
+#X obj 824 190 / 127;
+#N canvas 0 107 1011 691 AD 0;
+#X obj 432 149 inlet;
+#X obj 430 629 outlet~;
+#X obj 597 145 inlet;
+#X obj 818 164 inlet;
+#X obj 432 192 t b f;
+#X obj 432 399 t3_bpe;
+#X obj 432 334 t b b;
+#X obj 432 429 t3_line~ 0;
+#X obj 432 367 f 0.04;
+#X floatatom 469 283 5 0 0 0 - - -;
+#X obj 488 381 pack 0 0 1 1.5 1 0.5 0 1.5;
+#X text 525 268 pre-delay;
+#X floatatom 597 282 5 0 0 0 - - -;
+#X text 653 267 attack;
+#X floatatom 705 281 5 0 0 0 - - -;
+#X text 748 283 Samples;
+#X text 761 266 sustain;
+#X floatatom 818 278 5 0 0 0 - - -;
+#X text 861 280 Samples;
+#X text 874 263 release;
+#X msg 548 412 set _lin;
+#X msg 548 433 set _linsqrt;
+#X msg 548 454 set _sqrt;
+#X msg 548 474 set _sin;
+#X msg 549 495 set _sinhann;
+#X msg 549 517 set _hann;
+#X msg 350 346 stop;
+#X obj 432 534 fade~ _sin;
+#X connect 0 0 4 0;
+#X connect 2 0 12 0;
+#X connect 3 0 17 0;
+#X connect 4 0 6 0;
+#X connect 4 1 14 0;
+#X connect 5 0 7 0;
+#X connect 5 1 7 1;
+#X connect 6 0 8 0;
+#X connect 6 1 10 0;
+#X connect 7 0 27 0;
+#X connect 8 0 5 0;
+#X connect 9 0 8 1;
+#X connect 10 0 5 0;
+#X connect 12 0 10 3;
+#X connect 14 0 10 5;
+#X connect 17 0 10 7;
+#X connect 20 0 27 0;
+#X connect 21 0 27 0;
+#X connect 22 0 27 0;
+#X connect 23 0 27 0;
+#X connect 24 0 27 0;
+#X connect 25 0 27 0;
+#X connect 26 0 5 0;
+#X connect 27 0 1 0;
+#X restore 924 296 pd AD;
+#X obj 747 252 r \$0-rAtt_1;
+#X obj 760 272 r \$0-rRel_1;
+#X obj 836 251 r \$0-rAtt_2;
+#X obj 849 270 r \$0-rRel_2;
+#X obj 936 256 r \$0-rAtt_3;
+#X obj 949 275 r \$0-rRel_3;
+#X obj 116 203 / 100;
+#X obj 55 76 r \$0-pitch_Op1;
+#X obj 227 104 sig~;
+#X obj 227 82 r \$0-pitch_Op2;
+#X obj 424 102 sig~;
+#X obj 424 80 r \$0-pitch_Op3;
+#X obj 787 148 r \$0-NoteVel;
+#X obj 525 292 r \$0-outAmt_3;
+#X obj 510 374 *~;
+#X obj 525 312 / 100;
+#X obj 309 371 *~;
+#X obj 324 312 / 100;
+#X obj 324 289 r \$0-outAmt_2;
+#X obj 112 352 *~;
+#X obj 127 293 / 100;
+#X obj 127 270 r \$0-outAmt_1;
+#X obj 112 374 throw~ \$0-out;
+#X obj 310 392 throw~ \$0-out;
+#X obj 510 396 throw~ \$0-out;
+#X obj 525 333 pack 0 50;
+#X obj 525 353 line~;
+#X obj 324 332 pack 0 50;
+#X obj 324 352 line~;
+#X obj 127 312 pack 0 50;
+#X obj 127 332 line~;
+#X connect 0 0 10 0;
+#X connect 1 0 0 0;
+#X connect 2 0 1 0;
+#X connect 3 0 14 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 6 0 18 0;
+#X connect 7 0 6 0;
+#X connect 8 0 7 0;
+#X connect 9 0 10 1;
+#X connect 10 0 29 0;
+#X connect 11 0 9 0;
+#X connect 12 0 10 2;
+#X connect 13 0 14 1;
+#X connect 14 0 30 0;
+#X connect 15 0 13 0;
+#X connect 16 0 14 2;
+#X connect 17 0 18 1;
+#X connect 18 0 31 0;
+#X connect 19 0 17 0;
+#X connect 20 0 18 2;
+#X connect 21 0 1 1;
+#X connect 22 0 4 1;
+#X connect 23 0 7 1;
+#X connect 27 0 33 0;
+#X connect 28 0 27 0;
+#X connect 28 0 40 0;
+#X connect 28 0 43 0;
+#X connect 29 0 24 0;
+#X connect 29 0 63 0;
+#X connect 30 0 25 0;
+#X connect 30 0 60 0;
+#X connect 31 0 26 0;
+#X connect 31 0 58 0;
+#X connect 32 0 29 1;
+#X connect 36 0 30 1;
+#X connect 37 0 31 1;
+#X connect 38 1 42 0;
+#X connect 39 0 2 0;
+#X connect 40 0 34 0;
+#X connect 41 0 28 0;
+#X connect 42 0 41 0;
+#X connect 43 0 35 0;
+#X connect 44 0 27 1;
+#X connect 45 0 27 2;
+#X connect 46 0 40 1;
+#X connect 47 0 40 2;
+#X connect 48 0 43 1;
+#X connect 49 0 43 2;
+#X connect 50 0 12 0;
+#X connect 51 0 39 0;
+#X connect 52 0 5 0;
+#X connect 53 0 52 0;
+#X connect 54 0 8 0;
+#X connect 55 0 54 0;
+#X connect 56 0 38 0;
+#X connect 57 0 59 0;
+#X connect 58 0 68 0;
+#X connect 59 0 69 0;
+#X connect 60 0 67 0;
+#X connect 61 0 71 0;
+#X connect 62 0 61 0;
+#X connect 63 0 66 0;
+#X connect 64 0 73 0;
+#X connect 65 0 64 0;
+#X connect 69 0 70 0;
+#X connect 70 0 58 1;
+#X connect 71 0 72 0;
+#X connect 72 0 60 1;
+#X connect 73 0 74 0;
+#X connect 74 0 63 1;
+#X restore 741 236 pd sound-engine;
+#N canvas 384 294 748 517 saves 0;
+#X obj 564 140 originator \$1 \$0;
+#X obj 564 117 r \$0-originator;
+#X obj 56 96 r \$0-outAmt_1;
+#X obj 56 147 s \$0-send-outAmt_1;
+#X obj 191 97 r \$0-outAmt_2;
+#X obj 191 148 s \$0-send-outAmt_2;
+#X obj 328 97 r \$0-outAmt_3;
+#X obj 328 148 s \$0-send-outAmt_3;
+#X text 54 65 OUT AMOUNTS;
+#X text 56 182 ENVELOPES;
+#X obj 57 210 r \$0-rAtt_1;
+#X obj 173 209 r \$0-rAtt_2;
+#X obj 292 208 r \$0-rAtt_3;
+#X obj 58 283 r \$0-rRel_1;
+#X obj 58 308 commun /Rel_1 \$0;
+#X obj 56 121 commun /outAmt_1 \$0;
+#X obj 191 122 commun /outAmt_2 \$0;
+#X obj 328 122 commun /outAmt_3 \$0;
+#X obj 57 234 commun /Att_1 \$0;
+#X obj 173 233 commun /Att_2 \$0;
+#X obj 292 232 commun /Att_3 \$0;
+#X obj 177 283 r \$0-rRel_2;
+#X obj 177 308 commun /Rel_2 \$0;
+#X obj 302 283 r \$0-rRel_3;
+#X obj 302 308 commun /Rel_3 \$0;
+#X obj 600 39 inlet;
+#X obj 58 330 s \$0-sRel_1;
+#X obj 57 257 s \$0-sAtt_1;
+#X obj 173 256 s \$0-sAtt_2;
+#X obj 292 255 s \$0-sAtt_3;
+#X obj 302 330 s \$0-sRel_3;
+#X obj 177 330 s \$0-sRel_2;
+#X obj 600 65 s \$0-originator;
+#X msg 545 217 substate \$1;
+#X obj 545 243 s \$0-originator;
+#X obj 467 223 t b f;
+#X obj 523 178 r \$0-preset-out;
+#X msg 474 248 set;
+#N canvas 358 497 899 308 ops 0;
+#X obj 15 54 commun /op3-op3 \$0;
+#X obj 153 54 commun /op3-op2 \$0;
+#X obj 296 54 commun /op3-op1 \$0;
+#X obj 14 151 commun /op2-op1 \$0;
+#X obj 152 149 commun /op2-op2 \$0;
+#X obj 290 150 commun /op2-op3 \$0;
+#X obj 12 242 commun /op1-op1 \$0;
+#X obj 150 240 commun /op1-op2 \$0;
+#X obj 288 241 commun /op1-op3 \$0;
+#X obj 15 82 s \$0-send-op3->op3;
+#X obj 15 29 r \$0-op3->op3;
+#X obj 153 24 s \$0-send-op3->op2;
+#X obj 153 84 r \$0-op3->op2;
+#X obj 296 26 s \$0-send-op3->op1;
+#X obj 296 84 r \$0-op3->op1;
+#X obj 14 121 s \$0-send-op2->op1;
+#X obj 14 181 r \$0-op2->op1;
+#X obj 152 179 r \$0-op2->op2;
+#X obj 152 119 s \$0-send-op2->op2;
+#X obj 290 120 s \$0-send-op2->op3;
+#X obj 288 211 s \$0-send-op1->op3;
+#X obj 150 210 s \$0-send-op1->op2;
+#X obj 12 212 s \$0-send-op1->op1;
+#X obj 290 180 r \$0-op2->op3;
+#X obj 288 271 r \$0-op1->op3;
+#X obj 150 270 r \$0-op1->op2;
+#X obj 12 272 r \$0-op1->op1;
+#X connect 0 0 9 0;
+#X connect 1 0 11 0;
+#X connect 2 0 13 0;
+#X connect 3 0 15 0;
+#X connect 4 0 18 0;
+#X connect 5 0 19 0;
+#X connect 6 0 22 0;
+#X connect 7 0 21 0;
+#X connect 8 0 20 0;
+#X connect 10 0 0 0;
+#X connect 12 0 1 0;
+#X connect 14 0 2 0;
+#X connect 16 0 3 0;
+#X connect 17 0 4 0;
+#X connect 23 0 5 0;
+#X connect 24 0 8 0;
+#X connect 25 0 7 0;
+#X connect 26 0 6 0;
+#X restore 60 370 pd ops;
+#X connect 1 0 0 0;
+#X connect 2 0 15 0;
+#X connect 4 0 16 0;
+#X connect 6 0 17 0;
+#X connect 10 0 18 0;
+#X connect 11 0 19 0;
+#X connect 12 0 20 0;
+#X connect 13 0 14 0;
+#X connect 14 0 26 0;
+#X connect 15 0 3 0;
+#X connect 16 0 5 0;
+#X connect 17 0 7 0;
+#X connect 18 0 27 0;
+#X connect 19 0 28 0;
+#X connect 20 0 29 0;
+#X connect 21 0 22 0;
+#X connect 22 0 31 0;
+#X connect 23 0 24 0;
+#X connect 24 0 30 0;
+#X connect 25 0 0 1;
+#X connect 33 0 34 0;
+#X connect 35 0 37 0;
+#X connect 35 1 33 0;
+#X connect 36 0 35 0;
+#X connect 37 0 34 0;
+#X restore 741 213 pd saves;
+#X obj 414 239 outlet~;
+#X obj 417 97 inlet;
+#X obj 460 96 inlet;
+#X obj 516 96 inlet;
+#X obj 741 190 inlet;
+#X floatatom 174 237 5 0 0 2 preset #0-preset-in #0-preset-out;
+#X connect 10 0 77 0;
+#X connect 72 0 73 0;
+#X connect 78 0 7 0;
+#X connect 79 0 6 0;
+#X connect 80 0 8 0;
+#X connect 81 0 76 0;
+#X coords 0 0 1 1 248 380 1;
diff --git a/instruments/mafm/dollars.txt b/instruments/mafm/dollars.txt
new file mode 100644
index 0000000..15d7522
--- /dev/null
+++ b/instruments/mafm/dollars.txt
@@ -0,0 +1,152 @@
+#X obj 460 183 vsl 15 128 0 1000 0 0 \$0-rAtt_1 \$0-sAtt_1 A 0 -8 1728
+#X obj 478 183 vsl 15 128 0 1000 0 0 \$0-rRel_1 \$0-sRel_1 R 0 -8 1728
+#X obj 519 185 vsl 15 128 0 1000 0 0 \$0-rAtt_2 \$0-sAtt_2 A 0 -8 1728
+#X obj 537 185 vsl 15 128 0 1000 0 0 \$0-rRel_2 \$0-sRel_2 R 0 -8 1728
+#X obj 580 184 vsl 15 128 0 1000 0 0 \$0-rAtt_3 \$0-sAtt_3 A 0 -8 1728
+#X obj 598 184 vsl 15 128 0 1000 0 0 \$0-rRel_3 \$0-sRel_3 R 0 -8 1728
+#X obj 180 143 s \$0-NoteVel;
+#X obj 165 164 s \$0-NotePitch;
+#X obj 196 122 s \$0-NoteChnl;
+#X obj 152 422 r \$0-op1->op3;
+#X obj 328 419 r \$0-op2->op3;
+#X obj 503 417 r \$0-op3->op3;
+#X obj 165 256 r \$0-op1->op2;
+#X obj 341 253 r \$0-op2->op2;
+#X obj 516 251 r \$0-op3->op2;
+#X obj 181 106 r \$0-op1->op1;
+#X obj 357 103 r \$0-op2->op1;
+#X obj 532 101 r \$0-op3->op1;
+#X obj 578 146 cnv 10 40 1 \$0-r_Op1OutCanvash \$0-s_Op1OutCanvash
+#X obj 562 140 cnv 12 38 16 empty \$0-s_Op1OutCanvash empty 4 6 576
+#X obj 563 141 nbx 3 14 0 100 0 0 \$0-outAmt_1 \$0-send-outAmt_1 empty
+#X obj 520 98 cnv 15 1 50 \$0-r_Op2OutCanvas \$0-s_Op2OutCanvas empty
+#X obj 522 146 cnv 10 40 1 \$0-r_Op2OutCanvash \$0-s_Op2OutCanvash
+#X obj 510 140 cnv 12 38 16 empty \$0-s_Op2OutCanvas empty 4 6 576
+#X obj 511 141 nbx 3 14 0 100 0 0 \$0-outAmt_2 \$0-send-outAmt_2 empty
+#X obj 470 146 cnv 10 40 1 \$0-r_Op3OutCanvash \$0-s_Op3OutCanvash
+#X obj 467 -2 cnv 12 40 22 empty \$0-s_Op3FBCanvas empty 4 6 576 8
+#X obj 455 -10 cnv 12 34 16 empty \$0-s_Op3FBCanvas empty 4 6 576 8
+#X obj 456 -9 nbx 3 14 0 100 0 0 \$0-op3->op3 \$0-send-op3->op3 empty
+#X obj 467 10 cnv 15 1 50 \$0-r_Op3Op2 \$0-s_Op3Op2 empty 20 12 1728
+#X obj 467 98 cnv 15 1 50 \$0-r_Op3OutCanvas \$0-s_Op3OutCanvas empty
+#X obj 458 140 cnv 12 38 16 empty \$0-s_Op3OutCanvas empty 4 6 576
+#X obj 459 141 nbx 3 14 0 100 0 0 \$0-outAmt_3 \$0-send-outAmt_3 empty
+#X obj 468 55 cnv 10 40 1 \$0-r_Op3Op2h \$0-s_Op3Op2h empty 20 12 1728
+#X obj 470 103 cnv 10 40 1 \$0-r_Op3Op1h \$0-s_Op3Op1h empty 20 12
+#X obj 467 50 cnv 15 1 50 \$0-r_Op3Op2_2 \$0-s_Op3Op2_2 empty 20 12
+#X obj 457 49 cnv 12 38 16 empty \$0-s_Op3Op2Canvas empty 4 6 576 8
+#X obj 458 50 nbx 3 14 0 100 0 0 \$0-op3->op2 \$0-send-op3->op2 empty
+#X obj 457 97 cnv 12 38 16 empty \$0-s_Op3Op1Canvas empty 4 6 576 8
+#X obj 458 98 nbx 3 14 0 100 0 0 \$0-op3->op1 \$0-send-op3->op1 empty
+#X obj 530 103 cnv 10 30 1 \$0-r_Op2Op1h \$0-s_Op2Op1h empty 20 12
+#X obj 510 97 cnv 12 38 16 empty \$0-s_Op2Op1Canvas empty 4 6 576 8
+#X obj 511 98 nbx 3 14 0 100 0 0 \$0-op2->op1 \$0-send-op2->op1 empty
+#X obj 573 49 cnv 15 1 50 \$0-r_Op1Op2 \$0-s_Op1Op2 empty 20 12 1728
+#X obj 562 49 cnv 12 38 16 empty \$0-s_Op1Op2Canvas empty 4 6 576 8
+#X obj 563 50 nbx 3 14 0 100 0 0 \$0-op1->op2 \$0-send-op1->op2 empty
+#X obj 573 99 cnv 15 1 40 \$0-r_Op1OutCanvas \$0-s_Op1OutCanvas empty
+#X obj 573 86 cnv 12 40 22 empty \$0-s_Op1FBCanvas empty 4 6 576 8
+#X obj 561 78 cnv 12 34 16 empty \$0-s_Op1FBCanvas empty 4 6 576 8
+#X obj 562 79 nbx 3 14 0 100 0 0 \$0-op1->op1 \$0-send-op1->op1 empty
+#X obj 520 38 cnv 12 40 22 empty \$0-s_Op2FBCanvas empty 4 6 576 8
+#X obj 508 30 cnv 12 34 16 empty \$0-s_Op2FBCanvas empty 4 6 576 8
+#X obj 509 31 nbx 3 14 0 100 0 0 \$0-op2->op2 \$0-send-op2->op2 empty
+#X obj 520 50 cnv 15 1 46 \$0-r_Op2Op1 \$0-s_Op2Op1 empty 20 12 1728
+#X obj 532 56 cnv 10 30 1 \$0-r_Op1Op2h \$0-s_Op1Op2h empty 20 12 1728
+#X obj 563 5 cnv 12 38 16 empty \$0-s_Op1Op3Canvas empty 4 6 576 8
+#X obj 573 6 cnv 15 1 42 \$0-r_Op1Op3_1 \$0-s_Op1Op3_1 empty 20 12
+#X obj 564 6 nbx 3 14 0 100 0 0 \$0-op1->op3 \$0-send-op1->op3 empty
+#X obj 478 10 cnv 10 32 1 \$0-r_Op2Op3h \$0-s_Op2Op3h empty 20 12 1728
+#X obj 532 10 cnv 10 30 1 \$0-r_Op1Op3h \$0-s_Op1Op3h empty 20 12 1728
+#X obj 510 5 cnv 12 38 16 empty \$0-s_Op2Op3Canvas empty 4 6 576 8
+#X obj 520 5 cnv 15 1 24 \$0-r_Op2Op3 \$0-s_Op2Op3 empty 20 12 1728
+#X obj 511 6 nbx 3 14 0 100 0 0 \$0-op2->op3 \$0-send-op2->op3 empty
+#X obj 621 120 bng 15 250 50 0 \$0-r_RsFB \$0-s_RsFB ResetFeedback
+#X obj 215 122 s \$0-send-op1->op1;
+#X obj 327 122 s \$0-send-op2->op1;
+#X obj 440 123 s \$0-send-op3->op1;
+#X obj 224 187 s \$0-send-op3->op3;
+#X obj 336 188 s \$0-send-op3->op2;
+#X obj 210 260 s \$0-send-op1->op3;
+#X obj 322 261 s \$0-send-op2->op2;
+#X obj 439 263 s \$0-send-op1->op2;
+#X obj 556 264 s \$0-send-op2->op3;
+#X obj 197 320 s \$0-send-outAmt_1;
+#X obj 197 349 s \$0-send-outAmt_2;
+#X obj 207 388 s \$0-send-outAmt_3;
+#X obj 421 48 r \$0-r_RsFB;
+#X obj 30 97 s \$0-s_Op1FBCanvas;
+#X obj 30 9 r \$0-op1->op1;
+#X obj 173 6 r \$0-op2->op2;
+#X obj 173 95 s \$0-s_Op2FBCanvas;
+#X obj 314 4 r \$0-op3->op3;
+#X obj 314 93 s \$0-s_Op3FBCanvas;
+#X obj 727 102 s \$0-s_Op1OutCanvas;
+#X obj 607 102 s \$0-s_Op2OutCanvas;
+#X obj 476 102 s \$0-s_Op3OutCanvas;
+#X obj 476 6 r \$0-outAmt_3;
+#X obj 607 6 r \$0-outAmt_2;
+#X obj 727 5 r \$0-outAmt_1;
+#X obj 315 526 s \$0-s_Op1OutCanvash;
+#X obj 78 201 r \$0-outAmt_3;
+#X obj 204 549 s \$0-s_Op2OutCanvash;
+#X obj 73 576 s \$0-s_Op3OutCanvash;
+#X obj 209 201 r \$0-outAmt_2;
+#X obj 320 200 r \$0-outAmt_1;
+#X obj 560 187 r \$0-outAmt_3;
+#X obj 597 376 s \$0-s_Op3Op2_2;
+#X obj 784 463 s \$0-s_Op3Op2;
+#X obj 675 187 r \$0-op3->op1;
+#X obj 784 184 r \$0-op3->op2;
+#X obj 582 404 s \$0-s_Op3Op2;
+#X obj 883 113 s \$0-s_Op3Op2h;
+#X obj 884 7 r \$0-op3->op2;
+#X obj 882 148 s \$0-s_Op3Op2Canvas;
+#X obj 1013 7 r \$0-op3->op1;
+#X obj 1012 150 s \$0-s_Op3Op1Canvas;
+#X obj 1014 113 s \$0-s_Op3Op1h;
+#X obj 1281 33 r \$0-op2->op3;
+#X obj 1281 151 s \$0-s_Op2Op3Canvas;
+#X obj 406 598 r \$0-op3->op1;
+#X obj 112 596 r \$0-outAmt_2;
+#X obj 112 803 s \$0-s_Op2Op1;
+#X obj 262 596 r \$0-op2->op1;
+#X obj 262 802 s \$0-s_Op2Op1h;
+#X obj 1120 638 s \$0-s_Op2Op1Canvas;
+#X obj 1120 520 r \$0-op2->op1;
+#X obj 1005 551 r \$0-op1->op2;
+#X obj 1005 709 s \$0-s_Op1Op2h;
+#X obj 553 519 r \$0-op1->op3;
+#X obj 766 568 r \$0-op2->op3;
+#X obj 646 518 r \$0-op1->op2;
+#X obj 588 775 s \$0-s_Op1Op2;
+#X obj 1035 679 s \$0-s_Op1Op2Canvas;
+#X obj 875 650 s \$0-s_Op1Op3Canvas;
+#X obj 875 532 r \$0-op1->op3;
+#X obj 901 714 s \$0-s_Op1Op3_1;
+#X obj 764 686 s \$0-s_Op2Op3Canvas;
+#X obj 748 711 s \$0-s_Op2Op3;
+#X obj 1074 461 s \$0-s_Op1Op3h;
+#X obj 931 476 s \$0-s_Op2Op3h;
+#X obj 934 230 r \$0-op2->op3;
+#X obj 1078 237 r \$0-op1->op3;
+#X obj 17 258 s \$0-pitch_Op1;
+#X obj 277 214 s \$0-pitch_Op2;
+#X obj 452 200 s \$0-pitch_Op3;
+#X obj 452 47 r \$0-NoteVel;
+#X obj 283 63 r \$0-NoteVel;
+#X obj 35 16 r \$0-NotePitch;
+#X obj 801 87 s \$0-s_RsFB;
+#X obj 747 252 r \$0-rAtt_1;
+#X obj 760 272 r \$0-rRel_1;
+#X obj 836 251 r \$0-rAtt_2;
+#X obj 849 270 r \$0-rRel_2;
+#X obj 936 256 r \$0-rAtt_3;
+#X obj 949 275 r \$0-rRel_3;
+#X obj 55 76 r \$0-pitch_Op1;
+#X obj 227 82 r \$0-pitch_Op2;
+#X obj 424 80 r \$0-pitch_Op3;
+#X obj 787 148 r \$0-NoteVel;
+#X obj 525 292 r \$0-outAmt_3;
+#X obj 324 289 r \$0-outAmt_2;
+#X obj 127 270 r \$0-outAmt_1;
diff --git a/instruments/mafm/mafm.dat b/instruments/mafm/mafm.dat
new file mode 100644
index 0000000..fc5a17c
--- /dev/null
+++ b/instruments/mafm/mafm.dat
@@ -0,0 +1,80 @@
+0 , /outAmt_3 , 0
+0 , /outAmt_2 , 0
+0 , /outAmt_1 , 0
+/fm 4 , /op3-op1 , 0
+/fm 4 , /op1-op1 , 0
+/fm 4 , /Rel_2 , 47.2441
+/fm 4 , /op1-op3 , 0
+/fm 4 , /outAmt_3 , 34
+/fm 4 , /Att_3 , 70.8661
+/fm 4 , /op3-op2 , 0
+/fm 4 , /Rel_1 , 826.772
+/fm 4 , /op2-op1 , 0
+/fm 4 , /op2-op2 , 0
+/fm 4 , /op3-op3 , 0
+/fm 4 , /op2-op3 , 0
+/fm 4 , /op1-op2 , 8
+/fm 4 , /Rel_3 , 314.961
+/fm 4 , /Att_2 , 440.945
+/fm 4 , /outAmt_2 , 46
+/fm 4 , /outAmt_1 , 38
+/fm 0 , /op3-op1 , 0
+/fm 0 , /op1-op1 , 0
+/fm 0 , /Rel_2 , 1000
+/fm 0 , /op1-op3 , 0
+/fm 0 , /outAmt_3 , 0
+/fm 0 , /Att_3 , 291.339
+/fm 0 , /Att_1 , 94.4882
+/fm 0 , /op3-op2 , 0
+/fm 0 , /Rel_1 , 1000
+/fm 0 , /op2-op1 , 0
+/fm 0 , /op2-op2 , 0
+/fm 0 , /op3-op3 , 0
+/fm 0 , /op2-op3 , 0
+/fm 0 , /op1-op2 , 0
+/fm 0 , /Rel_3 , 1000
+/fm 0 , /Att_2 , 456.693
+/fm 0 , /outAmt_2 , 0
+/fm 0 , /outAmt_1 , 0
+/fm 2 , /outAmt_3 , 0
+/fm 2 , /Att_1 , 118.11
+/fm 2 , /op2-op1 , 0
+/fm 2 , /op2-op2 , 0
+/fm 2 , /op3-op3 , 2
+/fm 2 , /op2-op3 , 6
+/fm 2 , /op1-op2 , 40
+/fm 2 , /outAmt_2 , 80
+/fm 2 , /outAmt_1 , 44
+/fm 3 , /op3-op1 , 0
+/fm 3 , /op1-op1 , 0
+/fm 3 , /op1-op3 , 0
+/fm 3 , /outAmt_3 , 0
+/fm 3 , /op3-op2 , 31
+/fm 3 , /op2-op1 , 22
+/fm 3 , /op2-op2 , 0
+/fm 3 , /op3-op3 , 0
+/fm 3 , /op2-op3 , 0
+/fm 3 , /op1-op2 , 0
+/fm 3 , /outAmt_2 , 0
+/fm 3 , /outAmt_1 , 92
+/fm 1 , /op3-op1 , 0
+/fm 1 , /op1-op1 , 0
+/fm 1 , /Rel_2 , 244.094
+/fm 1 , /op1-op3 , 0
+/fm 1 , /outAmt_3 , 100
+/fm 1 , /Att_3 , 275.591
+/fm 1 , /Att_1 , 346.457
+/fm 1 , /op3-op2 , 0
+/fm 1 , /Rel_1 , 708.661
+/fm 1 , /op2-op1 , 0
+/fm 1 , /op2-op2 , 0
+/fm 1 , /op3-op3 , 0
+/fm 1 , /op2-op3 , 0
+/fm 1 , /op1-op2 , 0
+/fm 1 , /Rel_3 , 496.063
+/fm 1 , /Att_2 , 220.472
+/fm 1 , /outAmt_2 , 0
+/fm 1 , /outAmt_1 , 0
+/one 0 , /outAmt_3 , 0
+/one 0 , /outAmt_2 , 0
+/one 0 , /outAmt_1 , 0
diff --git a/instruments/mafm/tester.pd b/instruments/mafm/tester.pd
new file mode 100644
index 0000000..ffc0af6
--- /dev/null
+++ b/instruments/mafm/tester.pd
@@ -0,0 +1,43 @@
+#N canvas 88 129 1018 578 10;
+#X obj 50 46 careGUI;
+#X obj 633 141 MA_FM /fm;
+#X obj 101 439 catch~ out;
+#X obj 84 465 ezdac~;
+#X obj 634 536 throw~ out;
+#X obj 627 44 metro 500;
+#X obj 617 90 makenote 90 300;
+#X obj 626 22 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
+;
+#X msg 621 67 60;
+#X obj 741 62 chordmap 60;
+#X obj 741 21 random 12;
+#X obj 743 43 + 60;
+#X obj 89 243 netcontrol /fm op1-op3;
+#X obj 298 351 sendOSC;
+#X obj 873 115 dumpOSC 3010;
+#X msg 313 314 connect localhost 3010;
+#X msg 354 334 disconnect;
+#X obj 911 168 print OSC;
+#X text 57 24 Click FILE and open mafm.dat \, then RESTORE;
+#X obj 298 242 netcontrol /fm outAmt_2;
+#X obj 745 91 notein;
+#X connect 1 0 4 0;
+#X connect 2 0 3 0;
+#X connect 2 0 3 1;
+#X connect 5 0 8 0;
+#X connect 5 0 10 0;
+#X connect 6 0 1 0;
+#X connect 6 1 1 1;
+#X connect 7 0 5 0;
+#X connect 9 0 6 0;
+#X connect 10 0 11 0;
+#X connect 11 0 9 0;
+#X connect 12 0 13 0;
+#X connect 14 0 1 3;
+#X connect 14 0 17 0;
+#X connect 15 0 13 0;
+#X connect 16 0 13 0;
+#X connect 19 0 13 0;
+#X connect 20 0 1 0;
+#X connect 20 1 1 1;
+#X connect 20 2 1 2;
diff --git a/instruments/mgadsr.pd b/instruments/mgadsr.pd
new file mode 100644
index 0000000..c813282
--- /dev/null
+++ b/instruments/mgadsr.pd
@@ -0,0 +1,83 @@
+#N canvas 176 493 602 343 10;
+#X obj 66 99 vsl 8 64 0 100 0 0 \$0-a \$0-ain a 0 -8 1729 8 -355 -260818
+-143491 693 1;
+#X obj 209 100 vsl 8 64 0 200 0 0 \$0-d \$0-din d 0 -8 1729 8 -355
+-260818 -143491 800 1;
+#X obj 362 100 vsl 8 64 0 1 0 0 \$0-s \$0-sin s 0 -8 1729 8 -355 -260818
+-143491 1800 1;
+#X obj 498 100 vsl 8 64 0 1000 0 0 \$0-r \$0-rin r 0 -8 1729 8 -355
+-260818 -143491 1000 1;
+#X obj 36 27 inlet;
+#N canvas 0 0 600 400 envelope 0;
+#X obj 252 135 r \$0-a;
+#X obj 307 134 r \$0-d;
+#X obj 361 133 r \$0-s;
+#X obj 413 132 r \$0-r;
+#X obj 448 340 outlet;
+#X obj 508 170 t b f;
+#X obj 455 171 t b f;
+#X obj 409 172 t b f;
+#X obj 458 274 pack 0 0 0 0;
+#X obj 448 314 prepend adsr;
+#X connect 0 0 8 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 5 0;
+#X connect 5 0 8 0;
+#X connect 5 1 8 3;
+#X connect 6 0 8 0;
+#X connect 6 1 8 2;
+#X connect 7 0 8 0;
+#X connect 7 1 8 1;
+#X connect 8 0 9 0;
+#X connect 9 0 4 0;
+#X restore 13 206 pd envelope;
+#X text 24 5 Graphical ADSR;
+#X obj 566 97 f;
+#X obj 15 80 f;
+#X obj 85 230 outlet;
+#N canvas 625 564 450 300 saves 0;
+#X obj 15 71 originator \$1 \$0;
+#X obj 250 96 r \$0-s;
+#X obj 252 150 s \$0-sin;
+#X obj 142 96 r \$0-d;
+#X obj 151 149 s \$0-din;
+#X obj 205 65 s \$0-ain;
+#X obj 202 11 r \$0-a;
+#X obj 181 201 r \$0-r;
+#X obj 183 255 s \$0-rin;
+#X obj 18 19 inlet;
+#X obj 203 38 commun /a \$0;
+#X obj 251 123 commun /s \$0;
+#X obj 147 122 commun /d \$0;
+#X obj 182 228 commun /r \$0;
+#X connect 1 0 11 0;
+#X connect 3 0 12 0;
+#X connect 6 0 10 0;
+#X connect 7 0 13 0;
+#X connect 9 0 0 0;
+#X connect 10 0 5 0;
+#X connect 11 0 2 0;
+#X connect 12 0 4 0;
+#X connect 13 0 8 0;
+#X restore 364 251 pd saves;
+#X obj 192 298 s \$0-levelin;
+#X msg 376 228 substate \$1;
+#X obj 36 51 route set substate vel;
+#X msg 315 228 set mem;
+#X obj 324 75 s \$0-OSC;
+#X obj 324 29 inlet;
+#X obj 324 49 OSCroute \$1;
+#X text 79 260 level;
+#X text 79 249 adsr as list;
+#X connect 4 0 13 0;
+#X connect 5 0 9 0;
+#X connect 8 0 7 0;
+#X connect 12 0 10 0;
+#X connect 13 0 14 0;
+#X connect 13 1 12 0;
+#X connect 13 2 11 0;
+#X connect 14 0 10 0;
+#X connect 16 0 17 0;
+#X connect 17 0 15 0;
+#X coords 0 0 1 1 80 90 1;
diff --git a/instruments/netcontrol.pd b/instruments/netcontrol.pd
new file mode 100644
index 0000000..8a45d74
--- /dev/null
+++ b/instruments/netcontrol.pd
@@ -0,0 +1,33 @@
+#N canvas 363 400 167 71 10;
+#X symbolatom 12 39 10 0 0 2 whereTo? - -;
+#X obj 65 180 pack s 0;
+#X floatatom 105 39 5 0 0 2 what? - -;
+#X msg 65 204 send \$1 \$2;
+#X obj 129 80 t b f;
+#X obj 65 230 outlet;
+#X obj 67 104 makesymbol \$1/%s;
+#X obj 260 64 loadbang;
+#X obj 264 132 route float;
+#X msg 264 157 bang;
+#X obj 260 90 any \$2;
+#X obj 301 189 symbol unknown;
+#X obj 13 7 inlet;
+#X obj 105 6 inlet;
+#X obj 54 149 symbol;
+#X connect 0 0 6 0;
+#X connect 1 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 5 0;
+#X connect 4 0 14 0;
+#X connect 4 1 1 1;
+#X connect 6 0 14 1;
+#X connect 7 0 10 0;
+#X connect 8 0 9 0;
+#X connect 8 1 11 0;
+#X connect 9 0 11 0;
+#X connect 10 0 8 0;
+#X connect 11 0 0 0;
+#X connect 12 0 0 0;
+#X connect 13 0 2 0;
+#X connect 14 0 1 0;
+#X coords 0 0 1 1 200 50 1;
diff --git a/instruments/polyengines.pd b/instruments/polyengines.pd
new file mode 100644
index 0000000..46dd563
--- /dev/null
+++ b/instruments/polyengines.pd
@@ -0,0 +1,130 @@
+#N canvas 0 0 1242 860 10;
+#X obj 119 414 adsr-engine;
+#X obj 157 68 inlet;
+#X obj 342 67 inlet;
+#X text 146 43 note/velocity pairs;
+#X text 342 41 control data;
+#X obj 163 103 unpack 0 0;
+#X obj 154 186 route 1 2 3 4;
+#X obj 161 167 pack 0 0 0;
+#X obj 108 235 s \$0-v1;
+#X obj 285 241 s \$0-v4;
+#X obj 227 238 s \$0-v3;
+#X obj 166 237 s \$0-v2;
+#X obj 342 98 s \$0-ctldat;
+#X obj 7 415 analogue-engine;
+#X obj 17 334 unpack 0 0;
+#X msg 7 358 freq \$1;
+#X msg 125 357 level \$1;
+#X obj 135 380 r \$0-ctldat;
+#X obj 38 454 *~;
+#X obj 38 479 throw~ \$0-outanadsr;
+#X obj 357 556 catch~ \$0-outanadsr;
+#X obj 357 585 outlet~;
+#X obj 21 315 r \$0-v1;
+#X obj 335 420 adsr-engine;
+#X obj 223 421 analogue-engine;
+#X obj 233 340 unpack 0 0;
+#X msg 223 364 freq \$1;
+#X msg 341 363 level \$1;
+#X obj 351 386 r \$0-ctldat;
+#X obj 254 460 *~;
+#X obj 254 485 throw~ \$0-outanadsr;
+#X obj 537 420 adsr-engine;
+#X obj 425 421 analogue-engine;
+#X obj 435 340 unpack 0 0;
+#X msg 425 364 freq \$1;
+#X msg 543 363 level \$1;
+#X obj 553 386 r \$0-ctldat;
+#X obj 456 460 *~;
+#X obj 456 485 throw~ \$0-outanadsr;
+#X obj 748 426 adsr-engine;
+#X obj 636 427 analogue-engine;
+#X obj 646 346 unpack 0 0;
+#X msg 636 370 freq \$1;
+#X msg 754 369 level \$1;
+#X obj 764 392 r \$0-ctldat;
+#X obj 667 466 *~;
+#X obj 667 491 throw~ \$0-outanadsr;
+#X obj 237 321 r \$0-v2;
+#X obj 439 321 r \$0-v3;
+#X obj 650 327 r \$0-v4;
+#X text 512 41 polyphony is done here!;
+#X obj 173 146 poly 4 1;
+#X obj 526 444 *~;
+#X obj 528 463 *~;
+#X obj 751 451 *~;
+#X obj 753 470 *~;
+#X obj 333 441 *~;
+#X obj 335 460 *~;
+#X obj 92 437 *~;
+#X obj 94 456 *~;
+#X connect 0 0 58 0;
+#X connect 0 0 58 1;
+#X connect 1 0 5 0;
+#X connect 2 0 12 0;
+#X connect 5 0 51 0;
+#X connect 5 1 51 1;
+#X connect 6 0 8 0;
+#X connect 6 1 11 0;
+#X connect 6 2 10 0;
+#X connect 6 3 9 0;
+#X connect 7 0 6 0;
+#X connect 13 0 18 0;
+#X connect 14 0 15 0;
+#X connect 14 1 16 0;
+#X connect 15 0 13 0;
+#X connect 16 0 0 0;
+#X connect 17 0 13 0;
+#X connect 17 0 0 0;
+#X connect 18 0 19 0;
+#X connect 20 0 21 0;
+#X connect 22 0 14 0;
+#X connect 23 0 56 0;
+#X connect 23 0 56 1;
+#X connect 24 0 29 0;
+#X connect 25 0 26 0;
+#X connect 25 1 27 0;
+#X connect 26 0 24 0;
+#X connect 27 0 23 0;
+#X connect 28 0 24 0;
+#X connect 28 0 23 0;
+#X connect 29 0 30 0;
+#X connect 31 0 52 0;
+#X connect 31 0 52 1;
+#X connect 32 0 37 0;
+#X connect 33 0 34 0;
+#X connect 33 1 35 0;
+#X connect 34 0 32 0;
+#X connect 35 0 31 0;
+#X connect 36 0 32 0;
+#X connect 36 0 31 0;
+#X connect 37 0 38 0;
+#X connect 39 0 54 0;
+#X connect 39 0 54 1;
+#X connect 40 0 45 0;
+#X connect 41 0 42 0;
+#X connect 41 1 43 0;
+#X connect 42 0 40 0;
+#X connect 43 0 39 0;
+#X connect 44 0 40 0;
+#X connect 44 0 39 0;
+#X connect 45 0 46 0;
+#X connect 47 0 25 0;
+#X connect 48 0 33 0;
+#X connect 49 0 41 0;
+#X connect 51 0 7 0;
+#X connect 51 1 7 1;
+#X connect 51 2 7 2;
+#X connect 52 0 53 0;
+#X connect 52 0 53 1;
+#X connect 53 0 37 1;
+#X connect 54 0 55 0;
+#X connect 54 0 55 1;
+#X connect 55 0 45 1;
+#X connect 56 0 57 0;
+#X connect 56 0 57 1;
+#X connect 57 0 29 1;
+#X connect 58 0 59 0;
+#X connect 58 0 59 1;
+#X connect 59 0 18 1;
diff --git a/instruments/rrad.angriff~.pd b/instruments/rrad.angriff~.pd
new file mode 100644
index 0000000..19f89eb
--- /dev/null
+++ b/instruments/rrad.angriff~.pd
@@ -0,0 +1,431 @@
+#N canvas 54 514 304 148 10;
+#X obj 470 181 outlet~;
+#N canvas 0 0 472 437 hiddendrums 0;
+#X obj 36 302 inlet;
+#X obj 64 374 outlet~;
+#X obj 73 52 r \$0-fromfr;
+#X obj 103 94 r \$0-tofr;
+#X obj 89 74 r \$0-frtime;
+#X obj 133 133 r \$0-att_time;
+#X obj 148 155 r \$0-rel_time;
+#X obj 163 182 r \$0-nlevel;
+#X obj 180 204 r \$0-nattack;
+#X obj 197 227 r \$0-nrelease;
+#X obj 215 249 r \$0-filt;
+#X obj 118 112 r \$0-olevel;
+#X obj 224 271 r \$0-filt_freq;
+#X obj 234 293 r \$0-detune;
+#X obj 242 315 r \$0-filt_Q;
+#X obj 65 340 d-drumcenter _____________;
+#X connect 0 0 15 0;
+#X connect 2 0 15 1;
+#X connect 3 0 15 3;
+#X connect 4 0 15 2;
+#X connect 5 0 15 5;
+#X connect 6 0 15 6;
+#X connect 7 0 15 7;
+#X connect 8 0 15 8;
+#X connect 9 0 15 9;
+#X connect 10 0 15 10;
+#X connect 11 0 15 4;
+#X connect 12 0 15 11;
+#X connect 13 0 15 12;
+#X connect 14 0 15 13;
+#X connect 15 0 1 0;
+#X restore 470 96 pd hiddendrums;
+#X obj 419 48 inlet;
+#X obj 1 16 cnv 15 150 130 empty empty OSCILLATOR 20 12 1 8 -66577
+-233017 0;
+#X obj 152 16 cnv 15 150 100 empty empty NOISE 20 12 1 8 -195568 -33289
+0;
+#X obj 493 122 / 128;
+#X obj 470 148 *~ 1;
+#X obj 419 69 select 0;
+#N canvas 689 185 334 138 1228-labelling 0;
+#X obj 11 90 s \$0-filt_r;
+#X obj 11 37 sel 0 1 2;
+#X msg 11 65 label hip;
+#X msg 72 66 label lop;
+#X msg 137 66 label bp;
+#X obj 11 14 r \$0-filt;
+#X obj 229 87 s \$0-label_r;
+#X obj 229 47 symbol \$1;
+#X obj 229 27 loadbang;
+#X msg 229 66 label \$1;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 1 2 4 0;
+#X connect 2 0 0 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 0;
+#X connect 5 0 1 0;
+#X connect 7 0 9 0;
+#X connect 8 0 7 0;
+#X connect 9 0 6 0;
+#X restore 575 91 pd \$0-labelling;
+#X obj 164 64 hsl 128 11 0 127 0 0 \$0-nrelease \$0-nrelease release
+45 6 1 8 -262144 -1 -1 3800 0;
+#X obj 164 51 hsl 128 11 0 127 0 0 \$0-nattack \$0-nattack attack 45
+6 1 8 -262144 -1 -1 2200 0;
+#X obj 164 38 hsl 128 11 0 1 0 0 \$0-nlevel \$0-nlevel nlevel 45 6
+1 8 -262144 -1 -1 8001 0;
+#X obj 164 95 hsl 128 11 0 6000 0 0 \$0-filt_freq \$0-filt_freq filt_freq
+45 6 1 8 -262144 -1 -1 3600 0;
+#X obj 164 79 hsl 48 12 0 6 0 0 \$0-filt_Q \$0-filt_Q filt_Q 14 6 1
+8 -262144 -1 -1 500 1;
+#X obj 237 79 hdl 12 0 0 3 \$0-filt \$0-filt_r hip 40 6 1729 8 -262144
+-1 -1 0;
+#X obj 12 123 hsl 128 11 0 1000 0 0 \$0-rel_time \$0-rel_time rel_time
+45 6 1 8 -262144 -1 -1 1500 0;
+#X obj 12 110 hsl 128 11 0 40 0 0 \$0-att_time \$0-att_time att_time
+45 6 1 8 -262144 -1 -1 900 0;
+#X obj 12 97 hsl 128 11 0 127 0 0 \$0-tofr \$0-tofr to_freq 45 6 1
+8 -262144 -1 -1 6300 0;
+#X obj 12 84 hsl 128 11 0 127 0 0 \$0-frtime \$0-frtime freq_time 45
+6 1 8 -262144 -1 -1 0 0;
+#X obj 12 71 hsl 128 11 0 127 0 0 \$0-fromfr \$0-fromfr from_freq 45
+6 1 8 -262144 -1 -1 0 0;
+#X obj 12 58 hsl 128 11 0 1 0 0 \$0-olevel \$0-olevel olevel 45 6 1
+8 -262144 -1 -1 12700 0;
+#X obj 50 43 hsl 48 12 0 30 0 0 \$0-detune \$0-detune detune 6 7 1
+8 -262144 -1 -1 2000 1;
+#N canvas 0 0 246 189 1228-settings 0;
+#N canvas 165 199 970 635 settings 0;
+#X obj 689 456 table \$0-settings;
+#X obj 52 11 r \$0-fromfr;
+#X obj 52 103 r \$0-tofr;
+#X obj 52 57 r \$0-frtime;
+#X obj 52 195 r \$0-att_time;
+#X obj 52 241 r \$0-rel_time;
+#X obj 52 287 r \$0-nlevel;
+#X obj 52 333 r \$0-nattack;
+#X obj 52 379 r \$0-nrelease;
+#X obj 52 425 r \$0-filt;
+#X obj 52 149 r \$0-olevel;
+#X obj 52 471 r \$0-filt_freq;
+#X obj 52 34 named_writer \$0-settings 1;
+#X obj 52 356 named_writer \$0-settings 8;
+#X obj 52 80 named_writer \$0-settings 2;
+#X obj 52 172 named_writer \$0-settings 4;
+#X obj 52 126 named_writer \$0-settings 3;
+#X obj 52 218 named_writer \$0-settings 5;
+#X obj 52 264 named_writer \$0-settings 6;
+#X obj 52 310 named_writer \$0-settings 7;
+#X obj 52 402 named_writer \$0-settings 9;
+#X obj 52 448 named_writer \$0-settings 10;
+#X obj 52 494 named_writer \$0-settings 11;
+#X obj 315 305 named_sender \$0-settings \$0-fromfr 1;
+#X obj 315 328 named_sender \$0-settings \$0-frtime 2;
+#X obj 315 351 named_sender \$0-settings \$0-tofr 3;
+#X obj 315 374 named_sender \$0-settings \$0-olevel 4;
+#X obj 315 397 named_sender \$0-settings \$0-att_time 5;
+#X obj 315 420 named_sender \$0-settings \$0-rel_time 6;
+#X obj 315 443 named_sender \$0-settings \$0-nlevel 7;
+#X obj 315 466 named_sender \$0-settings \$0-nattack 8;
+#X obj 315 489 named_sender \$0-settings \$0-nrelease 9;
+#X obj 315 534 named_sender \$0-settings \$0-filt_freq 11;
+#X obj 315 179 until;
+#X obj 345 234 + 1;
+#X obj 271 179 bang;
+#X msg 271 200 0;
+#X obj 315 234 f 0;
+#X obj 418 11 inlet;
+#X obj 418 57 select load save;
+#X obj 418 85 openpanel;
+#X obj 628 106 savepanel;
+#X msg 702 180 \; \$2-settings write \$1;
+#X obj 702 157 pack s \$0;
+#X obj 418 34 symbol;
+#X obj 418 168 pack s \$0;
+#X obj 536 118 loadbang;
+#X msg 418 237 \; \$2-settings read \$1;
+#X obj 565 227 del 2;
+#X obj 565 204 t b;
+#X obj 565 250 s \$0-sender;
+#X obj 315 121 r \$0-sender;
+#X msg 315 144 15;
+#X obj 652 23 inlet;
+#X obj 652 46 route load save;
+#X obj 315 558 named_sender \$0-settings \$0-detune 12;
+#X obj 52 517 r \$0-detune;
+#X obj 52 540 named_writer \$0-settings 12;
+#X obj 315 583 named_sender \$0-settings \$0-filt_Q 13;
+#X obj 54 584 named_writer \$0-settings 13;
+#X obj 54 561 r \$0-filt_Q;
+#X obj 315 512 named_sender \$0-settings \$0-filt_r 10;
+#X obj 536 141 symbol \$2;
+#X connect 1 0 12 0;
+#X connect 2 0 16 0;
+#X connect 3 0 14 0;
+#X connect 4 0 17 0;
+#X connect 5 0 18 0;
+#X connect 6 0 19 0;
+#X connect 7 0 13 0;
+#X connect 8 0 20 0;
+#X connect 9 0 21 0;
+#X connect 10 0 15 0;
+#X connect 11 0 22 0;
+#X connect 33 0 37 0;
+#X connect 34 0 37 1;
+#X connect 35 0 36 0;
+#X connect 36 0 37 0;
+#X connect 37 0 34 0;
+#X connect 37 0 23 0;
+#X connect 37 0 24 0;
+#X connect 37 0 25 0;
+#X connect 37 0 26 0;
+#X connect 37 0 27 0;
+#X connect 37 0 28 0;
+#X connect 37 0 29 0;
+#X connect 37 0 30 0;
+#X connect 37 0 31 0;
+#X connect 37 0 32 0;
+#X connect 37 0 55 0;
+#X connect 37 0 58 0;
+#X connect 37 0 61 0;
+#X connect 38 0 44 0;
+#X connect 39 0 40 0;
+#X connect 39 1 41 0;
+#X connect 40 0 45 0;
+#X connect 41 0 43 0;
+#X connect 43 0 42 0;
+#X connect 44 0 39 0;
+#X connect 45 0 47 0;
+#X connect 45 0 49 0;
+#X connect 46 0 62 0;
+#X connect 48 0 50 0;
+#X connect 49 0 48 0;
+#X connect 51 0 52 0;
+#X connect 52 0 33 0;
+#X connect 52 0 35 0;
+#X connect 53 0 54 0;
+#X connect 54 0 45 0;
+#X connect 54 1 43 0;
+#X connect 56 0 57 0;
+#X connect 60 0 59 0;
+#X connect 62 0 45 0;
+#X restore 28 108 pd settings;
+#X msg 28 39 save;
+#X msg 39 83 load;
+#X obj 89 86 inlet;
+#X obj 39 62 r \$0-load_s;
+#X obj 28 18 r \$0-save_s;
+#X connect 1 0 0 0;
+#X connect 2 0 0 0;
+#X connect 3 0 0 1;
+#X connect 4 0 2 0;
+#X connect 5 0 1 0;
+#X restore 575 71 pd \$0-settings;
+#X obj 575 51 inlet;
+#X text 8 150 All code (99%) by Frank Barknecht at www.footils.org
+;
+#X text 6 164 Given a makeover by David McCallum \, 2003 - http//mentalfloss.ca/sintheta
+;
+#X obj 152 117 cnv 15 150 29 empty \$0-label_r /snare 10 14 1 14 -166441
+-1 0;
+#X obj 265 125 bng 15 250 50 0 \$0-load_s empty L 5 8 1 8 -24198 -1
+-1;
+#X obj 284 125 bng 15 250 50 0 \$0-save_s empty s 5 7 1 8 -258699 -1
+-1;
+#X obj 281 19 bng 15 250 50 0 \$0-random_s empty ? 5 8 1 8 -1 -262144
+-262144;
+#N canvas 796 213 505 528 1228-random! 0;
+#X obj 375 72 s \$0-fromfr;
+#X obj 198 70 s \$0-tofr;
+#X obj 287 71 s \$0-frtime;
+#X obj 208 234 s \$0-att_time;
+#X obj 17 236 s \$0-rel_time;
+#X obj 243 480 s \$0-nlevel;
+#X obj 110 69 s \$0-nattack;
+#X obj 22 69 s \$0-nrelease;
+#X obj 143 478 s \$0-olevel;
+#X obj 293 141 s \$0-filt_freq;
+#X obj 22 138 s \$0-detune;
+#X obj 314 254 s \$0-filt_Q;
+#X obj 22 30 r \$0-random_s;
+#X obj 22 50 random 128;
+#X obj 110 30 r \$0-random_s;
+#X obj 110 50 random 128;
+#X obj 198 30 r \$0-random_s;
+#X obj 198 50 random 128;
+#X obj 287 32 r \$0-random_s;
+#X obj 287 52 random 128;
+#X obj 375 30 r \$0-random_s;
+#X obj 375 50 random 128;
+#X obj 22 98 r \$0-random_s;
+#X obj 22 118 random 30;
+#X obj 143 270 r \$0-random_s;
+#X obj 143 294 random 101;
+#X obj 293 99 r \$0-random_s;
+#X obj 293 119 random 6000;
+#X obj 17 194 r \$0-random_s;
+#X obj 17 214 random 1000;
+#X obj 118 193 r \$0-random_s;
+#X obj 118 213 random 3;
+#X obj 208 193 r \$0-random_s;
+#X obj 208 213 random 40;
+#X obj 314 195 r \$0-random_s;
+#X obj 314 215 random 100;
+#X obj 314 235 * 0.06;
+#X obj 118 234 s \$0-filt_r;
+#X obj 15 307 s \$0-label_r;
+#X obj 15 268 r \$0-random_s;
+#X msg 15 288 label random!;
+#X obj 143 314 moses 50;
+#X obj 209 342 expr $f1/$f1;
+#X obj 186 368 expr (100-$f1)/$f1;
+#X obj 159 416 expr $f1/(100-$f1);
+#X obj 143 440 expr $f1/$f1;
+#X connect 12 0 13 0;
+#X connect 13 0 7 0;
+#X connect 14 0 15 0;
+#X connect 15 0 6 0;
+#X connect 16 0 17 0;
+#X connect 17 0 1 0;
+#X connect 18 0 19 0;
+#X connect 19 0 2 0;
+#X connect 20 0 21 0;
+#X connect 21 0 0 0;
+#X connect 22 0 23 0;
+#X connect 23 0 10 0;
+#X connect 24 0 25 0;
+#X connect 25 0 41 0;
+#X connect 26 0 27 0;
+#X connect 27 0 9 0;
+#X connect 28 0 29 0;
+#X connect 29 0 4 0;
+#X connect 30 0 31 0;
+#X connect 31 0 37 0;
+#X connect 32 0 33 0;
+#X connect 33 0 3 0;
+#X connect 34 0 35 0;
+#X connect 35 0 36 0;
+#X connect 36 0 11 0;
+#X connect 39 0 40 0;
+#X connect 40 0 38 0;
+#X connect 41 0 44 0;
+#X connect 41 0 45 0;
+#X connect 41 1 42 0;
+#X connect 41 1 43 0;
+#X connect 42 0 5 0;
+#X connect 43 0 8 0;
+#X connect 44 0 5 0;
+#X connect 45 0 8 0;
+#X restore 576 111 pd \$0-random!;
+#X obj 746 67 inlet;
+#N canvas 317 0 923 817 memento 0;
+#X obj 63 176 originator \$1 \$0;
+#X obj 170 148 inlet OSC;
+#X obj 65 71 r \$0-substate;
+#X obj 33 29 inlet substate;
+#X obj 33 51 route substate;
+#X obj 177 71 r \$0-copy;
+#X msg 177 92 copy;
+#X obj 261 66 r \$0-paste;
+#X msg 259 87 paste;
+#X text 172 31 This is the originator \, including some ready to use
+standard functionality.;
+#X text 525 72 Put your commun sends here \, if you like.;
+#X msg 33 107 setsub \$1;
+#X msg 267 200 svdir \$1;
+#X obj 268 155 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 268 179 savepanel;
+#X obj 170 205 outlet OSC;
+#X msg 126 230 svxdir /tmp/svdir.xml;
+#X msg 96 257 ldxdir /tmp/svdir.xml;
+#X obj 723 96 r \$0-fromfr;
+#X obj 723 188 r \$0-tofr;
+#X obj 723 142 r \$0-frtime;
+#X obj 723 280 r \$0-att_time;
+#X obj 723 326 r \$0-rel_time;
+#X obj 723 372 r \$0-nlevel;
+#X obj 723 464 r \$0-nrelease;
+#X obj 723 510 r \$0-filt;
+#X obj 723 234 r \$0-olevel;
+#X obj 723 556 r \$0-filt_freq;
+#X obj 723 602 r \$0-detune;
+#X obj 725 646 r \$0-filt_Q;
+#X obj 597 165 s \$0-fromfr;
+#X obj 597 211 s \$0-frtime;
+#X obj 597 256 s \$0-tofr;
+#X obj 597 303 s \$0-olevel;
+#X obj 597 349 s \$0-att_time;
+#X obj 597 395 s \$0-rel_time;
+#X obj 597 441 s \$0-nlevel;
+#X obj 597 487 s \$0-nattack;
+#X obj 597 533 s \$0-nrelease;
+#X obj 597 579 s \$0-filt;
+#X obj 597 625 s \$0-filt_freq;
+#X obj 598 672 s \$0-detune;
+#X obj 599 715 s \$0-filt_Q;
+#X obj 722 256 commun /olevel \$0;
+#X obj 724 301 commun /att_time \$0;
+#X obj 723 348 commun /rel_time \$0;
+#X obj 724 532 commun /filt \$0;
+#X obj 723 577 commun /filt_freq \$0;
+#X obj 726 622 commun /detune \$0;
+#X obj 723 665 commun /filt_Q \$0;
+#X obj 723 120 commun /from_freq \$0;
+#X obj 723 165 commun /freq_time \$0;
+#X obj 721 209 commun /to_freq \$0;
+#X obj 723 418 r \$0-nattack;
+#X obj 725 440 commun /attack \$0;
+#X obj 724 485 commun /release \$0;
+#X obj 723 394 commun /nlevel \$0;
+#X connect 0 2 15 0;
+#X connect 1 0 0 1;
+#X connect 2 0 11 0;
+#X connect 3 0 4 0;
+#X connect 4 0 11 0;
+#X connect 4 1 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 0 0;
+#X connect 7 0 8 0;
+#X connect 8 0 0 0;
+#X connect 11 0 0 0;
+#X connect 12 0 0 0;
+#X connect 13 0 14 0;
+#X connect 14 0 12 0;
+#X connect 16 0 0 0;
+#X connect 17 0 0 0;
+#X connect 18 0 50 0;
+#X connect 19 0 52 0;
+#X connect 20 0 51 0;
+#X connect 21 0 44 0;
+#X connect 22 0 45 0;
+#X connect 23 0 56 0;
+#X connect 24 0 55 0;
+#X connect 25 0 46 0;
+#X connect 26 0 43 0;
+#X connect 27 0 47 0;
+#X connect 28 0 48 0;
+#X connect 29 0 49 0;
+#X connect 43 0 33 0;
+#X connect 44 0 34 0;
+#X connect 45 0 35 0;
+#X connect 46 0 39 0;
+#X connect 47 0 40 0;
+#X connect 48 0 41 0;
+#X connect 49 0 42 0;
+#X connect 50 0 30 0;
+#X connect 51 0 31 0;
+#X connect 52 0 32 0;
+#X connect 53 0 54 0;
+#X connect 54 0 37 0;
+#X connect 55 0 38 0;
+#X connect 56 0 36 0;
+#X restore 691 93 pd memento;
+#X obj 691 115 outlet;
+#X obj 695 66 inlet;
+#X connect 1 0 6 0;
+#X connect 2 0 7 0;
+#X connect 5 0 6 1;
+#X connect 6 0 0 0;
+#X connect 7 1 1 0;
+#X connect 7 1 5 0;
+#X connect 23 0 22 0;
+#X connect 31 0 32 1;
+#X connect 32 0 33 0;
+#X connect 34 0 32 0;
+#X coords 0 0 1 1 304 147 1;
diff --git a/instruments/rrad.fluid~.pd b/instruments/rrad.fluid~.pd
new file mode 100644
index 0000000..4530316
--- /dev/null
+++ b/instruments/rrad.fluid~.pd
@@ -0,0 +1,150 @@
+#N canvas 269 340 255 162 10;
+#X obj 3 21 cnv 15 247 138 empty \$0-background-cnv empty 20 12 1 14
+-195568 -66577 0;
+#X obj 254 3 inlet;
+#X obj 434 3 inlet OSC;
+#N canvas 0 0 981 424 saves 0;
+#X msg 15 103 set;
+#X msg 45 104 substate \$1;
+#X obj 15 78 t b f;
+#X obj 45 160 originator \$1 \$0;
+#X obj 152 132 inlet OSC;
+#X obj 47 55 r \$0-substate;
+#X obj 15 13 inlet substate;
+#X obj 15 35 route substate;
+#X obj 159 55 r \$0-copy;
+#X msg 159 76 copy;
+#X obj 243 50 r \$0-paste;
+#X msg 241 71 paste;
+#X text 154 15 This is the originator \, including some ready to use
+standard functionality.;
+#X text 507 56 Put your commun sends here \, if you like.;
+#X obj 625 110 commun /soundfont \$0;
+#X obj 625 86 r \$0-soundfont;
+#X obj 625 171 s \$0-soundfont;
+#X obj 321 156 openpanel;
+#X obj 321 129 r \$0-open;
+#X obj 326 264 s \$0-fluid;
+#X msg 326 235 load \$1;
+#X obj 321 179 s \$0-soundfont;
+#X obj 326 212 r \$0-soundfont;
+#X obj 507 86 r \$0-chan;
+#X obj 507 110 commun /chan \$0;
+#X obj 507 135 s \$0-chan;
+#X obj 413 238 stripdir;
+#X obj 430 265 s \$0-soundfont-name;
+#X obj 625 140 symbol;
+#X obj 152 182 outlet;
+#X obj 622 226 r \$0-prog;
+#X obj 622 250 commun /prog \$0;
+#X obj 622 276 s \$0-prog;
+#X obj 743 226 r \$0-bank;
+#X obj 743 250 commun /bank \$0;
+#X obj 743 276 s \$0-bank;
+#X connect 0 0 3 0;
+#X connect 1 0 3 0;
+#X connect 2 0 0 0;
+#X connect 2 1 1 0;
+#X connect 3 2 29 0;
+#X connect 4 0 3 1;
+#X connect 5 0 2 0;
+#X connect 6 0 7 0;
+#X connect 7 0 2 0;
+#X connect 7 1 3 0;
+#X connect 8 0 9 0;
+#X connect 9 0 3 0;
+#X connect 10 0 11 0;
+#X connect 11 0 3 0;
+#X connect 14 0 28 0;
+#X connect 15 0 14 0;
+#X connect 17 0 21 0;
+#X connect 18 0 17 0;
+#X connect 20 0 19 0;
+#X connect 22 0 20 0;
+#X connect 22 0 26 0;
+#X connect 23 0 24 0;
+#X connect 24 0 25 0;
+#X connect 26 0 27 0;
+#X connect 28 0 16 0;
+#X connect 30 0 31 0;
+#X connect 31 0 32 0;
+#X connect 33 0 34 0;
+#X connect 34 0 35 0;
+#X restore 372 2 pd saves;
+#N canvas 569 61 450 300 cnv.ctl 0;
+#X obj 90 188 s \$0-background-cnv;
+#X floatatom 108 59 5 100 1000 0 width - -;
+#X floatatom 112 83 4 50 500 0 height - -;
+#X obj 92 132 pack 0 0;
+#X msg 92 159 vis_size \$1 \$2;
+#X obj 110 106 t b f;
+#X connect 1 0 3 0;
+#X connect 2 0 5 0;
+#X connect 3 0 4 0;
+#X connect 4 0 0 0;
+#X connect 5 0 3 0;
+#X connect 5 1 3 1;
+#X restore 297 2 pd cnv.ctl;
+#X obj 7 60 vradio 15 1 0 3 \$0-substate \$0-substate-r empty 0 -6
+0 8 -262144 -1 -1 0;
+#X obj 161 59 bng 15 250 50 0 \$0-copy empty copy 0 -6 0 8 -262144
+-1 -1;
+#X obj 191 59 bng 15 250 50 0 \$0-paste empty paste 0 -6 0 8 -262144
+-1 -1;
+#X text 185 2 look! ==>;
+#X obj 254 142 outlet~;
+#X obj 314 142 outlet~;
+#X obj 254 100 fluid~;
+#X obj 35 56 bng 32 250 50 0 \$0-open \$0-open Open 0 -6 0 8 -225271
+-1 -1;
+#X obj 280 72 r \$0-fluid;
+#X obj 87 59 nbx 5 14 0 1e+37 0 0 \$0-prog \$0-prog prog 0 -6 0 10
+-233017 -1 -1 0 256;
+#X obj 86 87 nbx 5 14 0 1e+37 0 0 \$0-chan \$0-chan chan 0 -6 0 10
+-262131 -1 -1 10 256;
+#N canvas 529 477 450 300 data 0;
+#X obj 122 44 r \$0-chan;
+#X obj 49 125 s \$0-fluid;
+#X msg 49 98 prog \$2 \$1;
+#X obj 49 75 pack 0 1;
+#X obj 49 45 r \$0-prog;
+#X obj 267 44 r \$0-chan;
+#X obj 194 125 s \$0-fluid;
+#X obj 194 75 pack 0 1;
+#X obj 194 45 r \$0-bank;
+#X msg 194 98 bank \$2 \$1;
+#X obj 122 168 r \$0-chan;
+#X obj 49 249 s \$0-fluid;
+#X obj 48 170 r \$0-ctl;
+#X obj 48 199 pack 0 0 1;
+#X msg 49 222 control \$3 \$1 \$2;
+#X connect 0 0 3 1;
+#X connect 2 0 1 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 0;
+#X connect 5 0 7 1;
+#X connect 7 0 9 0;
+#X connect 8 0 7 0;
+#X connect 9 0 6 0;
+#X connect 10 0 13 2;
+#X connect 12 0 13 0;
+#X connect 13 0 14 0;
+#X connect 14 0 11 0;
+#X restore 298 40 pd data;
+#X obj 85 125 nbx 5 14 -1e+37 1e+37 0 0 \$0-cc-num \$0-cc-num cc-num
+0 -6 0 10 -261689 -1 -1 0 256;
+#X obj 147 125 nbx 5 14 -1e+37 1e+37 0 0 \$0-cc-val \$0-cc-val cc-val
+0 -6 0 10 -261689 -1 -1 0 256;
+#X obj 21 125 nbx 5 14 0 1e+37 0 0 \$0-bank \$0-bank bank 0 -6 0 10
+-233017 -1 -1 0 256;
+#X symbolatom 148 88 10 0 0 0 - #0-soundfont-name -;
+#X obj 326 100 print 2fluid;
+#X obj 400 42 outlet;
+#X connect 1 0 11 0;
+#X connect 2 0 3 1;
+#X connect 3 0 22 0;
+#X connect 11 0 9 0;
+#X connect 11 1 10 0;
+#X connect 13 0 11 0;
+#X connect 13 0 21 0;
+#X coords 0 0 1 1 250 160 1;
diff --git a/instruments/rrad.minipli-xsample.pd b/instruments/rrad.minipli-xsample.pd
new file mode 100644
index 0000000..8697e68
--- /dev/null
+++ b/instruments/rrad.minipli-xsample.pd
@@ -0,0 +1,116 @@
+#N canvas 357 262 102 64 10;
+#N canvas 652 443 450 300 pli 0;
+#X obj 330 15 table \$0-s;
+#X obj 148 70 xgroove~ \$0-s;
+#X obj 163 198 symbol \$0-s;
+#X obj 92 226 pack s s;
+#X obj 164 39 inlet;
+#X obj 211 38 inlet;
+#X obj 270 37 inlet;
+#X obj 28 155 r \$0-file;
+#X obj 317 185 openpanel;
+#X obj 317 210 s \$0-file;
+#X obj 317 157 r \$0-open;
+#X obj 148 112 outlet~;
+#X msg 92 253 read -resize \$1 \$2;
+#X obj 92 275 soundfiler;
+#X obj 75 39 r \$0-speed;
+#X obj 55 64 r \$0-loop;
+#X msg 55 83 loop \$1;
+#X obj 180 178 s \$0-speed;
+#X msg 160 13 bang;
+#X msg 180 153 1;
+#X obj 101 153 t b b b;
+#N canvas 534 237 450 300 settings 0;
+#X obj 92 234 originator \$1 \$0;
+#X obj 163 116 commun /file \$0;
+#X obj 163 140 symbol;
+#X obj 163 165 s \$0-file;
+#X obj 163 93 r \$0-file-s;
+#X obj 56 151 loadbang;
+#X obj 56 179 t b b;
+#X msg 85 199 substate 0;
+#X msg 49 200 set;
+#X obj 31 129 r \$0-reset;
+#X symbolatom 271 164 10 0 0 0 - - -;
+#X obj 316 64 r \$0-speed;
+#X obj 314 107 s \$0-speed;
+#X obj 315 87 commun /speed \$0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 2 0 10 0;
+#X connect 4 0 1 0;
+#X connect 5 0 6 0;
+#X connect 6 0 8 0;
+#X connect 6 1 7 0;
+#X connect 7 0 0 0;
+#X connect 8 0 0 0;
+#X connect 9 0 6 0;
+#X connect 11 0 13 0;
+#X connect 13 0 12 0;
+#X restore 317 128 pd settings;
+#X obj 11 226 s \$0-file-s;
+#X obj 92 198 symbol;
+#X msg 177 128 0;
+#X obj 210 154 loadbang;
+#X msg 44 121 reset;
+#X obj 26 179 t b s;
+#X obj 254 239 tabplay~;
+#X obj 333 37 inlet;
+#X obj 335 80 * 0.0078;
+#X obj 335 60 select 0;
+#X obj 249 100 vline~;
+#X obj 148 93 *~;
+#X msg 267 76 \$1 20;
+#X connect 1 0 33 0;
+#X connect 2 0 3 1;
+#X connect 3 0 12 0;
+#X connect 4 0 1 0;
+#X connect 5 0 1 1;
+#X connect 6 0 1 2;
+#X connect 7 0 27 0;
+#X connect 8 0 9 0;
+#X connect 10 0 8 0;
+#X connect 12 0 13 0;
+#X connect 14 0 1 0;
+#X connect 15 0 16 0;
+#X connect 16 0 1 0;
+#X connect 18 0 1 0;
+#X connect 19 0 17 0;
+#X connect 20 0 26 0;
+#X connect 20 0 19 0;
+#X connect 20 0 24 0;
+#X connect 20 1 23 0;
+#X connect 20 1 18 0;
+#X connect 20 2 2 0;
+#X connect 23 0 3 0;
+#X connect 23 0 22 0;
+#X connect 24 0 16 0;
+#X connect 25 0 26 0;
+#X connect 26 0 1 0;
+#X connect 27 0 20 0;
+#X connect 27 1 23 1;
+#X connect 29 0 31 0;
+#X connect 30 0 34 0;
+#X connect 31 1 30 0;
+#X connect 32 0 33 1;
+#X connect 33 0 11 0;
+#X connect 34 0 32 0;
+#X restore 116 42 pd pli;
+#X obj 116 20 inlet;
+#X obj 1 20 cnv 15 100 40 empty empty empty 20 12 0 10 -262131 -66577
+0;
+#X obj 13 34 bng 16 250 50 0 \$0-open \$0-open-r op 3 -6 1728 8 -225271
+-1 -1;
+#X obj 39 35 nbx 3 12 0 3 0 0 \$0-speed \$0-speed spd 0 -6 1728 8 -225280
+-1 -1 1 256;
+#X obj 77 34 tgl 14 0 \$0-loop \$0-loop loop 0 -6 1728 8 -261681 -1
+-1 0 1;
+#X obj 117 64 outlet~;
+#X obj 47 51 bng 8 250 50 0 \$0-reset empty empty 0 -6 1152 8 -258699
+-1 -1;
+#X obj 159 20 inlet;
+#X connect 0 0 6 0;
+#X connect 1 0 0 0;
+#X connect 8 0 0 3;
+#X coords 0 0 1 1 102 60 1;
diff --git a/instruments/rrad.minipli.pd b/instruments/rrad.minipli.pd
new file mode 100644
index 0000000..be3ddfc
--- /dev/null
+++ b/instruments/rrad.minipli.pd
@@ -0,0 +1,231 @@
+#N canvas 357 262 146 64 10;
+#N canvas 652 443 549 308 pli 0;
+#X obj 317 233 table \$0-s;
+#X obj 155 195 symbol \$0-s;
+#X obj 92 226 pack s s;
+#X obj 87 124 r \$0-file;
+#X obj 375 67 openpanel;
+#X obj 375 92 s \$0-file;
+#X obj 375 39 r \$0-open;
+#X obj 179 117 outlet~;
+#X msg 92 253 read -resize \$1 \$2;
+#X obj 92 275 soundfiler;
+#N canvas 534 237 450 300 settings 0;
+#X obj 92 234 originator \$1 \$0;
+#X obj 163 116 commun /file \$0;
+#X obj 163 140 symbol;
+#X obj 163 165 s \$0-file;
+#X obj 163 93 r \$0-file-s;
+#X obj 56 114 loadbang;
+#X msg 49 200 set;
+#X obj 200 206 inlet;
+#X obj 56 149 f 0;
+#X obj 19 91 r \$0-preset;
+#X obj 56 179 t b f;
+#X msg 85 198 substate \$1;
+#X obj 321 89 r \$0-attack;
+#X obj 321 137 s \$0-attack;
+#X obj 306 174 r \$0-rel;
+#X obj 306 222 s \$0-rel;
+#X obj 321 113 commun /att \$0;
+#X obj 306 198 commun /rel \$0;
+#X obj 266 272 outlet;
+#X connect 0 2 18 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 4 0 1 0;
+#X connect 5 0 8 0;
+#X connect 6 0 0 0;
+#X connect 7 0 0 1;
+#X connect 8 0 10 0;
+#X connect 9 0 8 0;
+#X connect 10 0 6 0;
+#X connect 10 1 11 0;
+#X connect 11 0 0 0;
+#X connect 12 0 16 0;
+#X connect 14 0 17 0;
+#X connect 16 0 13 0;
+#X connect 17 0 15 0;
+#X restore 456 252 pd settings;
+#X obj 7 249 s \$0-file-s;
+#X obj 92 198 symbol;
+#X obj 156 17 inlet;
+#X obj 87 148 t b b s;
+#X obj 155 172 loadbang;
+#X obj 456 231 inlet;
+#X obj 15 8 r \$0-file-s;
+#X obj 15 31 stripdir;
+#X msg 17 53 label \$1;
+#X obj 17 74 s \$0-filedisplay;
+#X obj 240 277 s \$0-filedisplay;
+#X obj 240 233 loadbang;
+#X msg 240 256 label |minipli;
+#X obj 254 27 r \$0-attack;
+#X obj 6 280 s \$0-size;
+#X obj 464 280 outlet;
+#N canvas 215 336 765 495 qsample 0;
+#X obj 425 81 inlet;
+#X obj 314 78 inlet;
+#X obj 223 42 inlet;
+#X obj 152 44 inlet;
+#X msg 250 268 0 5;
+#X floatatom 344 229 0 0 0 0 - - -;
+#X floatatom 223 60 0 0 0 0 - - -;
+#X msg 152 96 bang;
+#X text 152 28 button;
+#X obj 39 354 outlet~;
+#X text 157 14 play;
+#X obj 39 317 *~;
+#X obj 174 313 line~;
+#X obj 39 335 hip~ 5;
+#X obj 195 222 del 5;
+#X msg 169 266 0 5;
+#X floatatom 316 116 0 0 0 0 - - -;
+#X text 211 22 transpose;
+#X obj 223 78 mtof;
+#X text 425 65 length;
+#X obj 223 96 t b f;
+#X obj 224 114 8.1758;
+#X obj 223 132 /;
+#X obj 344 155 t b f;
+#X obj 250 250 del 2000;
+#X obj 344 191 * 1980;
+#X obj 344 173 f 1;
+#X text 304 52 beginning;
+#X text 314 62 point;
+#X obj 39 281 line~;
+#X obj 73 205 f;
+#X obj 22 243 + 88200;
+#X obj 22 261 pack;
+#X obj 110 261 * 2000;
+#X obj 73 223 t f f b;
+#X floatatom 110 280 0 0 0 0 - - -;
+#X obj 110 243 f 1;
+#X obj 89 182 * 44.1;
+#X obj 315 96 max 1;
+#X obj 344 210 max 6;
+#X obj 39 299 tabread4~ \$0-s;
+#X text 508 206 stolen from 7.stuff...sampler;
+#X obj 70 120 samplerate~;
+#X obj 66 66 loadbang;
+#X floatatom 57 165 5 0 0 0 - - -;
+#X msg 64 100 bang;
+#X obj 58 145 / 1000;
+#X msg 199 266 \$1 5;
+#X obj 197 242 f;
+#X obj 152 70 t b f;
+#X connect 0 0 23 0;
+#X connect 1 0 38 0;
+#X connect 2 0 6 0;
+#X connect 3 0 49 0;
+#X connect 4 0 12 0;
+#X connect 5 0 24 1;
+#X connect 6 0 18 0;
+#X connect 7 0 15 0;
+#X connect 7 0 14 0;
+#X connect 7 0 24 0;
+#X connect 11 0 13 0;
+#X connect 12 0 11 1;
+#X connect 13 0 9 0;
+#X connect 14 0 30 0;
+#X connect 14 0 48 0;
+#X connect 15 0 12 0;
+#X connect 16 0 37 0;
+#X connect 18 0 20 0;
+#X connect 20 0 21 0;
+#X connect 20 1 22 1;
+#X connect 21 0 22 0;
+#X connect 22 0 26 0;
+#X connect 22 0 36 1;
+#X connect 23 0 26 0;
+#X connect 23 1 25 1;
+#X connect 24 0 4 0;
+#X connect 25 0 39 0;
+#X connect 26 0 25 0;
+#X connect 29 0 40 0;
+#X connect 30 0 34 0;
+#X connect 31 0 32 0;
+#X connect 32 0 29 0;
+#X connect 33 0 32 1;
+#X connect 33 0 35 0;
+#X connect 34 0 31 0;
+#X connect 34 1 29 0;
+#X connect 34 2 36 0;
+#X connect 36 0 33 0;
+#X connect 37 0 30 1;
+#X connect 38 0 16 0;
+#X connect 39 0 5 0;
+#X connect 40 0 11 0;
+#X connect 42 0 46 0;
+#X connect 43 0 45 0;
+#X connect 45 0 42 0;
+#X connect 46 0 44 0;
+#X connect 46 0 37 1;
+#X connect 47 0 12 0;
+#X connect 48 0 47 0;
+#X connect 49 0 7 0;
+#X connect 49 1 48 1;
+#X restore 179 87 pd qsample;
+#X obj 267 56 r \$0-size;
+#X obj 212 18 inlet;
+#X obj 156 61 * 0.00787;
+#N canvas 0 0 750 349 help 0;
+#X obj 139 84 r \$0-help;
+#X obj 139 156 print ?;
+#X msg 139 120 __rrad..minipli__ \, inlet 1: velocity (0-127) \, inlet
+2: note (0-127) \, outlet 1: audio data;
+#X connect 0 0 2 0;
+#X connect 2 0 1 0;
+#X restore 381 163 pd help;
+#X connect 1 0 2 1;
+#X connect 2 0 8 0;
+#X connect 3 0 14 0;
+#X connect 4 0 5 0;
+#X connect 6 0 4 0;
+#X connect 8 0 9 0;
+#X connect 9 0 25 0;
+#X connect 10 0 26 0;
+#X connect 12 0 2 0;
+#X connect 12 0 11 0;
+#X connect 13 0 30 0;
+#X connect 14 0 12 0;
+#X connect 14 1 1 0;
+#X connect 14 2 12 1;
+#X connect 15 0 1 0;
+#X connect 16 0 10 0;
+#X connect 17 0 18 0;
+#X connect 18 0 19 0;
+#X connect 19 0 20 0;
+#X connect 22 0 23 0;
+#X connect 23 0 21 0;
+#X connect 24 0 27 2;
+#X connect 27 0 7 0;
+#X connect 28 0 27 3;
+#X connect 29 0 27 1;
+#X connect 30 0 27 0;
+#X restore 150 26 pd pli;
+#X obj 150 4 inlet;
+#X obj 2 20 cnv 15 140 40 empty empty empty 20 12 0 10 -262131 -66577
+0;
+#X obj 9 29 bng 16 250 50 0 \$0-open \$0-open-r op 3 -6 0 8 -225271
+-1 -1;
+#X obj 34 29 nbx 3 12 0 200 0 0 \$0-attack \$0-attack att 0 -6 0 8
+-257472 -1 -1 0 256;
+#X obj 151 48 outlet~;
+#X obj 232 5 inlet;
+#X obj 15 49 cnv 10 100 10 empty \$0-filedisplay |minipli 2 5 0 8 -261681
+-1 0;
+#X obj 106 29 nbx 3 12 0 3 0 0 \$0-preset \$0-preset preset 0 -6 0
+8 -225280 -1 -1 0 256;
+#X obj 71 29 nbx 3 12 0 999 0 0 \$0-rel \$0-rel rel 0 -6 0 8 -257472
+-1 -1 0 256;
+#X obj 225 47 outlet;
+#X obj 124 49 bng 8 250 50 0 \$0-help empty ? 10 5 0 8 -24198 -1 -1
+;
+#X obj 192 3 inlet;
+#X connect 0 0 5 0;
+#X connect 0 1 10 0;
+#X connect 1 0 0 0;
+#X connect 6 0 0 2;
+#X connect 12 0 0 1;
+#X coords 0 0 1 1 142 60 1;
diff --git a/instruments/rrad.square~.pd b/instruments/rrad.square~.pd
new file mode 100644
index 0000000..44fa95c
--- /dev/null
+++ b/instruments/rrad.square~.pd
@@ -0,0 +1,105 @@
+#N canvas 500 433 141 69 10;
+#X obj 1 14 cnv 15 140 50 empty \$0-background-cnv empty 20 12 1 14
+-225271 -66577 0;
+#X obj 432 -4 inlet OSC;
+#N canvas 183 51 981 424 saves 0;
+#X obj 45 160 originator \$1 \$0;
+#X obj 152 132 inlet OSC;
+#X obj 47 55 r \$0-substate;
+#X obj 15 13 inlet substate;
+#X obj 15 35 route substate;
+#X obj 159 55 r \$0-copy;
+#X msg 159 76 copy;
+#X obj 243 50 r \$0-paste;
+#X msg 241 71 paste;
+#X text 154 15 This is the originator \, including some ready to use
+standard functionality.;
+#X text 507 56 Put your commun sends here \, if you like.;
+#X msg 15 91 setsub \$1;
+#X msg 249 184 svdir \$1;
+#X obj 250 139 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 250 163 savepanel;
+#X obj 152 189 outlet OSC;
+#X msg 108 214 svxdir /tmp/svdir.xml;
+#X msg 78 241 ldxdir /tmp/svdir.xml;
+#X obj 606 141 commun /width \$0;
+#X obj 606 86 r \$0-width;
+#X obj 606 192 s \$0-width;
+#X obj 606 116 clip 0.01 0.99;
+#X obj 606 169 clip 0.01 0.99;
+#X connect 0 2 15 0;
+#X connect 1 0 0 1;
+#X connect 2 0 11 0;
+#X connect 3 0 4 0;
+#X connect 4 0 11 0;
+#X connect 4 1 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 0 0;
+#X connect 7 0 8 0;
+#X connect 8 0 0 0;
+#X connect 11 0 0 0;
+#X connect 12 0 0 0;
+#X connect 13 0 14 0;
+#X connect 14 0 12 0;
+#X connect 16 0 0 0;
+#X connect 17 0 0 0;
+#X connect 18 0 22 0;
+#X connect 19 0 21 0;
+#X connect 21 0 18 0;
+#X connect 22 0 20 0;
+#X restore 370 -5 pd saves;
+#N canvas 569 61 450 300 cnv.ctl 0;
+#X obj 90 188 s \$0-background-cnv;
+#X floatatom 108 59 5 100 1000 0 width - -;
+#X floatatom 112 83 4 50 500 0 height - -;
+#X obj 92 132 pack 0 0;
+#X msg 92 159 vis_size \$1 \$2;
+#X obj 110 106 t b f;
+#X connect 1 0 3 0;
+#X connect 2 0 5 0;
+#X connect 3 0 4 0;
+#X connect 4 0 0 0;
+#X connect 5 0 3 0;
+#X connect 5 1 3 1;
+#X restore 295 -5 pd cnv.ctl;
+#X obj 73 20 vradio 12 1 0 3 \$0-substate \$0-substate-r empty 0 -6
+0 8 -261689 -1 -1 1;
+#X text 183 -5 look! ==>;
+#X obj 370 16 outlet OSC;
+#X obj 253 55 outlet~;
+#N canvas 0 0 450 300 sigs 0;
+#X obj 109 136 phasor~;
+#X obj 109 193 blosc~ comparator;
+#X text 104 86 (square - pulse wave);
+#X obj 110 233 outlet~;
+#X obj 110 51 inlet;
+#X obj 239 117 r \$0-width;
+#X obj 109 165 -~;
+#X obj 167 161 line~;
+#X msg 229 152 \$1 15;
+#X obj 196 46 loadbang;
+#X msg 196 66 1 15;
+#X connect 0 0 6 0;
+#X connect 1 0 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 8 0;
+#X connect 6 0 1 0;
+#X connect 7 0 6 1;
+#X connect 8 0 7 0;
+#X connect 9 0 10 0;
+#X connect 10 0 7 0;
+#X restore 251 30 pd sigs;
+#X obj 7 29 hsl 50 15 0.01 0.99 0 0 \$0-width \$0-width width -2 -6
+0 8 -261681 -1 -1 3493 1;
+#X obj 249 -4 inlet;
+#X obj 105 29 bng 15 250 50 0 empty empty center -5 -8 0 8 -261681
+-1 -1;
+#X msg 47 50 0.5;
+#X connect 1 0 2 1;
+#X connect 2 0 6 0;
+#X connect 8 0 7 0;
+#X connect 10 0 8 0;
+#X connect 11 0 12 0;
+#X connect 12 0 9 0;
+#X coords 0 0 1 1 142 65 1;
diff --git a/instruments/settings.dat b/instruments/settings.dat
new file mode 100644
index 0000000..1ba3a62
--- /dev/null
+++ b/instruments/settings.dat
@@ -0,0 +1,55 @@
+/zweiter-adsr 0 , /d , 85.7143
+/zweiter-adsr 0 , /a , 1.5873
+/zweiter-adsr 0 , /r , 111.111
+/zweiter-adsr 0 , /s , 0.904762
+/zweiter-adsr 2 , /d , 60.3175
+/zweiter-adsr 2 , /a , 11.1111
+/zweiter-adsr 2 , /r , 174.603
+/zweiter-adsr 2 , /s , 0.825397
+/zweiter-adsr 1 , /d , 82.5397
+/zweiter-adsr 1 , /a , 14.2857
+/zweiter-adsr 1 , /r , 253.968
+/zweiter-adsr 1 , /s , 0.460317
+/erster 4 , /wave , 2
+/erster 4 , /inst , 112.059
+/erster 4 , /warm , 98.0141
+/erster 5 , /inst , 59.0176
+/erster 0 , /wave , 1
+/erster 0 , /inst , 108.324
+/erster 0 , /warm , 125.991
+/erster 2 , /wave , 1
+/erster 2 , /inst , 90.2074
+/erster 2 , /warm , 112.059
+/erster 3 , /wave , 2
+/erster 3 , /inst , 127
+/erster 3 , /warm , 72.9876
+/erster 1 , /wave , 0
+/erster 1 , /inst , 89.9832
+/erster 1 , /warm , 107.987
+/zweiter 0 , /wave , 3
+/zweiter 0 , /warm , 101.002
+/zweiter 2 , /wave , 2
+/zweiter 2 , /inst , 127
+/zweiter 2 , /warm , 108.324
+/zweiter 1 , /wave , 1
+/zweiter 1 , /inst , 97.1176
+/zweiter 1 , /warm , 112.059
+/erster-adsr 4 , /d , 25.3968
+/erster-adsr 4 , /a , 32
+/erster-adsr 4 , /r , 490.952
+/erster-adsr 4 , /s , 0.285714
+/erster-adsr 5 , /a , 11
+/erster-adsr 0 , /a , 22.2222
+/erster-adsr 0 , /s , 0.935556
+/erster-adsr 2 , /d , 50.7937
+/erster-adsr 2 , /a , 7.93651
+/erster-adsr 2 , /r , 190.476
+/erster-adsr 2 , /s , 0.507937
+/erster-adsr 3 , /d , 120.635
+/erster-adsr 3 , /a , 28.5714
+/erster-adsr 3 , /r , 169.206
+/erster-adsr 3 , /s , 0.349206
+/erster-adsr 1 , /d , 41.2698
+/erster-adsr 1 , /a , 0
+/erster-adsr 1 , /r , 202.063
+/erster-adsr 1 , /s , 0.825397
diff --git a/instruments/speakerboxx.pd b/instruments/speakerboxx.pd
new file mode 100644
index 0000000..7477a6b
--- /dev/null
+++ b/instruments/speakerboxx.pd
@@ -0,0 +1,193 @@
+#N canvas 90 183 899 335 10;
+#X obj 2 52 cnv 15 676 40 empty empty speakerboxx 20 12 0 14 -225271
+-66577 0;
+#X obj 372 34 select 0 1 2 3 4 5 6 7;
+#X symbolatom 25 140 10 0 0 0 - - -;
+#X obj 13 197 symbol .;
+#N canvas 400 230 450 300 soundengine 0;
+#X obj 161 200 klatt~;
+#X obj 161 80 phones2holmes f;
+#X obj 161 177 holmes;
+#X obj 179 52 guessphones;
+#X obj 160 271 outlet~;
+#X obj 55 17 inlet;
+#X obj 180 24 pack s;
+#X text 232 24 make list;
+#X obj 187 118 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 189 142 metro 10;
+#X obj 304 84 inlet;
+#X text 315 63 speed;
+#X obj 364 82 inlet;
+#X text 371 59 onoff;
+#X obj 298 143 loadbang;
+#X obj 297 173 f 1;
+#X obj 74 49 t b s b;
+#X msg 110 71 clear;
+#X connect 0 0 4 0;
+#X connect 1 0 2 0;
+#X connect 2 0 0 0;
+#X connect 3 0 1 0;
+#X connect 5 0 16 0;
+#X connect 6 0 3 0;
+#X connect 8 0 9 0;
+#X connect 9 0 2 0;
+#X connect 10 0 9 1;
+#X connect 12 0 8 0;
+#X connect 14 0 15 0;
+#X connect 15 0 8 0;
+#X connect 16 0 0 0;
+#X connect 16 1 6 0;
+#X connect 16 2 17 0;
+#X connect 17 0 2 0;
+#X restore 118 305 pd soundengine;
+#X floatatom 428 287 5 0 0 0 speed - -;
+#X obj 25 246 s \$0-speak;
+#X symbolatom 124 140 10 0 0 0 - - -;
+#X obj 112 197 symbol .;
+#X obj 124 246 s \$0-speak;
+#X symbolatom 230 140 10 0 0 0 - - -;
+#X obj 218 197 symbol .;
+#X obj 230 246 s \$0-speak;
+#X symbolatom 332 141 10 0 0 0 - - -;
+#X obj 320 198 symbol .;
+#X obj 332 247 s \$0-speak;
+#X symbolatom 433 141 10 0 0 0 - - -;
+#X obj 421 198 symbol .;
+#X obj 433 247 s \$0-speak;
+#X symbolatom 530 141 10 0 0 0 - - -;
+#X obj 518 198 symbol .;
+#X obj 530 247 s \$0-speak;
+#X symbolatom 627 141 10 0 0 0 - - -;
+#X obj 615 198 symbol .;
+#X obj 627 247 s \$0-speak;
+#X symbolatom 728 140 10 0 0 0 - - -;
+#X obj 716 197 symbol .;
+#X obj 728 246 s \$0-speak;
+#X obj 118 274 r \$0-speak;
+#X obj 728 223 symbol .;
+#X obj 627 224 symbol .;
+#X obj 530 224 symbol .;
+#X obj 433 224 symbol .;
+#X obj 332 224 symbol .;
+#X obj 230 223 symbol .;
+#X obj 124 223 symbol .;
+#X obj 25 223 symbol .;
+#X obj 674 71 inlet;
+#X obj 276 8 inlet;
+#X obj 54 306 outlet~;
+#N canvas 620 454 450 300 saves 0;
+#X obj 191 184 originator \$1 \$0;
+#X obj 33 16 inlet;
+#X obj 168 107 r \$0-presets;
+#X obj 54 95 s \$0-OSC;
+#X msg 207 152 substate \$1;
+#X obj 33 56 OSCroute \$1;
+#X obj 158 139 t b f;
+#X msg 154 160 set m;
+#X obj 35 137 s \$0-presets-in;
+#X obj 12 111 OSCroute /presets;
+#X obj 289 14 inlet;
+#X obj 291 55 select copy paste;
+#X msg 245 87 symbol copy;
+#X msg 336 111 symbol paste;
+#X obj 292 35 symbol;
+#X obj 347 77 t b b;
+#X connect 1 0 0 1;
+#X connect 1 0 5 0;
+#X connect 2 0 6 0;
+#X connect 4 0 0 0;
+#X connect 5 0 9 0;
+#X connect 6 0 7 0;
+#X connect 6 1 4 0;
+#X connect 7 0 0 0;
+#X connect 9 0 8 0;
+#X connect 10 0 14 0;
+#X connect 11 0 12 0;
+#X connect 11 1 15 0;
+#X connect 12 0 0 0;
+#X connect 13 0 0 0;
+#X connect 14 0 11 0;
+#X connect 15 0 7 0;
+#X connect 15 1 13 0;
+#X restore 672 98 pd saves;
+#X floatatom 245 284 5 0 0 0 presets #0-presets-in #0-presets;
+#X obj 518 171 commun /s6 \$0;
+#X symbolatom 22 285 10 0 0 0 - - -;
+#X obj 627 290 bng 15 250 50 0 empty empty copy 0 -6 0 8 -262144 -1
+-1;
+#X msg 626 312 copy;
+#X msg 675 314 paste;
+#X obj 758 290 bng 15 250 50 0 empty empty paste 0 -6 0 8 -262144 -1
+-1;
+#X obj 13 170 commun /s1 \$0;
+#X obj 112 170 commun /s2 \$0;
+#X obj 218 170 commun /s3 \$0;
+#X obj 320 171 commun /s4 \$0;
+#X obj 421 171 commun /s5 \$0;
+#X obj 615 171 commun /s7 \$0;
+#X obj 716 170 commun /s8 \$0;
+#X obj 472 286 commun /speed \$0;
+#X obj 252 316 outlet;
+#X connect 1 0 36 0;
+#X connect 1 1 35 0;
+#X connect 1 2 34 0;
+#X connect 1 3 33 0;
+#X connect 1 4 32 0;
+#X connect 1 5 31 0;
+#X connect 1 6 30 0;
+#X connect 1 7 29 0;
+#X connect 2 0 36 1;
+#X connect 2 0 48 0;
+#X connect 3 0 2 0;
+#X connect 4 0 39 0;
+#X connect 5 0 4 1;
+#X connect 5 0 55 0;
+#X connect 7 0 35 1;
+#X connect 7 0 49 0;
+#X connect 8 0 7 0;
+#X connect 10 0 34 1;
+#X connect 10 0 50 0;
+#X connect 11 0 10 0;
+#X connect 13 0 33 1;
+#X connect 13 0 51 0;
+#X connect 14 0 13 0;
+#X connect 16 0 32 1;
+#X connect 16 0 52 0;
+#X connect 17 0 16 0;
+#X connect 19 0 31 1;
+#X connect 19 0 42 0;
+#X connect 20 0 19 0;
+#X connect 22 0 30 1;
+#X connect 22 0 53 0;
+#X connect 23 0 22 0;
+#X connect 25 0 29 1;
+#X connect 25 0 54 0;
+#X connect 26 0 25 0;
+#X connect 28 0 4 0;
+#X connect 28 0 43 0;
+#X connect 28 0 56 0;
+#X connect 29 0 27 0;
+#X connect 30 0 24 0;
+#X connect 31 0 21 0;
+#X connect 32 0 18 0;
+#X connect 33 0 15 0;
+#X connect 34 0 12 0;
+#X connect 35 0 9 0;
+#X connect 36 0 6 0;
+#X connect 37 0 40 0;
+#X connect 38 0 1 0;
+#X connect 42 0 20 0;
+#X connect 44 0 45 0;
+#X connect 45 0 40 1;
+#X connect 46 0 40 1;
+#X connect 47 0 46 0;
+#X connect 48 0 3 0;
+#X connect 49 0 8 0;
+#X connect 50 0 11 0;
+#X connect 51 0 14 0;
+#X connect 52 0 17 0;
+#X connect 53 0 23 0;
+#X connect 54 0 26 0;
+#X connect 55 0 5 0;
+#X coords 0 0 1 1 680 80 1;
diff --git a/instruments/speakerboxx/ezdac~.pd b/instruments/speakerboxx/ezdac~.pd
new file mode 100644
index 0000000..9a85ed9
--- /dev/null
+++ b/instruments/speakerboxx/ezdac~.pd
@@ -0,0 +1,37 @@
+#N canvas 304 280 450 300 10;
+#X obj 224 205 dac~;
+#X obj 224 32 inlet~;
+#X obj 259 60 inlet~;
+#X obj 318 69 tgl 16 0 \$0-d \$0-d DSP 0 -6 1728 8 -260818 -123526
+-33289 1 1;
+#X msg 318 93 \; pd dsp \$1;
+#X obj 69 186 hsl 64 16 0 1 0 0 \$0-v \$0-v volume -2 -6 1728 8 -260818
+-123526 -1 0 1;
+#X obj 269 108 r \$0-v;
+#X obj 262 206 outlet~;
+#X obj 166 206 outlet~;
+#X obj 357 28 r pd;
+#X obj 357 52 route dsp;
+#X obj 269 155 line~;
+#X msg 269 132 \$1 10;
+#X obj 259 180 *~;
+#X obj 224 180 *~;
+#X obj 70 119 f \$1;
+#X obj 70 98 loadbang;
+#X obj 70 140 s \$0-v;
+#X connect 1 0 14 0;
+#X connect 2 0 13 0;
+#X connect 3 0 4 0;
+#X connect 6 0 12 0;
+#X connect 9 0 10 0;
+#X connect 10 0 3 0;
+#X connect 11 0 13 1;
+#X connect 11 0 14 1;
+#X connect 12 0 11 0;
+#X connect 13 0 0 1;
+#X connect 13 0 7 0;
+#X connect 14 0 0 0;
+#X connect 14 0 8 0;
+#X connect 15 0 17 0;
+#X connect 16 0 15 0;
+#X coords 0 0 1 1 90 55 1;
diff --git a/instruments/speakerboxx/gpans~.pd b/instruments/speakerboxx/gpans~.pd
new file mode 100644
index 0000000..586a18d
--- /dev/null
+++ b/instruments/speakerboxx/gpans~.pd
@@ -0,0 +1,29 @@
+#N canvas 0 0 450 300 10;
+#X obj 55 118 inlet~;
+#X obj 304 139 inlet~;
+#X obj 303 214 outlet~;
+#X obj 57 205 outlet~;
+#X obj 161 139 expr 1-$f1;
+#X obj 164 115 hsl 64 8 0 1 0 1 empty empty empty -2 -6 0 8 -166441
+-123526 -1 3150 1;
+#X obj 56 179 *~ 0.5;
+#X obj 303 185 *~ 0.5;
+#X msg 161 79 0.5;
+#X obj 365 140 inlet;
+#X obj 420 114 bng 8 250 50 0 empty empty empty 0 -6 0 8 -128992 -262144
+-1;
+#X obj 340 165 sqrt;
+#X obj 93 156 sqrt;
+#X connect 0 0 6 0;
+#X connect 1 0 7 0;
+#X connect 4 0 12 0;
+#X connect 5 0 4 0;
+#X connect 5 0 11 0;
+#X connect 6 0 3 0;
+#X connect 7 0 2 0;
+#X connect 8 0 5 0;
+#X connect 9 0 5 0;
+#X connect 10 0 8 0;
+#X connect 11 0 7 1;
+#X connect 12 0 6 1;
+#X coords 0 0 1 1 120 12 1;
diff --git a/instruments/speakerboxx/ratts.pd_linux b/instruments/speakerboxx/ratts.pd_linux
new file mode 100755
index 0000000..034944d
--- /dev/null
+++ b/instruments/speakerboxx/ratts.pd_linux
Binary files differ
diff --git a/instruments/speakerboxx/speaker.dat b/instruments/speakerboxx/speaker.dat
new file mode 100644
index 0000000..a795138
--- /dev/null
+++ b/instruments/speakerboxx/speaker.dat
@@ -0,0 +1,92 @@
+/speak 4 , /s3 , da
+/speak 4 , /speed , 5
+/speak 4 , /s5 , goon
+/speak 4 , /s7 , da
+/speak 4 , /s1 , goon
+/speak 5 , /s6 , iii
+/speak 5 , /s2 , auod
+/speak 5 , /s4 , oooo
+/speak 0 , /s3 , yipp
+/speak 0 , /s8 ,
+/speak 0 , /s6 ,
+/speak 0 , /s2 ,
+/speak 0 , /s4 ,
+/speak 0 , /speed , 3
+/speak 0 , /s5 ,
+/speak 0 , /s7 ,
+/speak 0 , /s1 , pow
+/speak 2 , /s3 , o
+/speak 2 , /s2 ,
+/speak 2 , /s4 ,
+/speak 2 , /s5 ,
+/speak 2 , /s1 , pow
+/speak 3 , /s2 ,
+/speak 1 , /s3 , o
+/outkast 4 , /s3 , da
+/outkast 4 , /s8 ,
+/outkast 4 , /s6 ,
+/outkast 4 , /s2 ,
+/outkast 4 , /s4 ,
+/outkast 4 , /speed , 5
+/outkast 4 , /s5 , goon
+/outkast 4 , /s7 , ah
+/outkast 4 , /s1 , goon
+/outkast 5 , /s3 , di
+/outkast 5 , /s8 , high
+/outkast 5 , /s6 , high
+/outkast 5 , /s2 , high
+/outkast 5 , /s4 , high
+/outkast 0 , /s3 , ck
+/outkast 0 , /s6 , pow
+/outkast 0 , /s2 , clack
+/outkast 0 , /s4 , clap
+/outkast 0 , /speed , 3
+/outkast 0 , /s5 , bow
+/outkast 0 , /s7 , ck
+/outkast 0 , /s1 , bow
+/outkast 2 , /s8 ,
+/outkast 2 , /s2 ,
+/outkast 2 , /s4 ,
+/outkast 2 , /s7 , ck
+/outkast 1 , /s8 , u
+/outkast 1 , /s2 , list
+/outkast 1 , /speed , 3
+/outkast 1 , /s7 , a
+/outkast 1 , /s1 , pow
+/speak2 4 , /s3 ,
+/speak2 4 , /s8 , dah
+/speak2 4 , /s6 ,
+/speak2 4 , /s2 , dah
+/speak2 4 , /s4 , goon
+/speak2 4 , /speed , 5
+/speak2 4 , /s5 , dah
+/speak2 4 , /s7 , goon
+/speak2 4 , /s1 , goon
+/speak2 5 , /s3 , eeee
+/speak2 5 , /s6 , eeee
+/speak2 0 , /s3 ,
+/speak2 0 , /s8 , ss
+/speak2 0 , /s6 ,
+/speak2 0 , /s2 , ss
+/speak2 0 , /s4 ,
+/speak2 0 , /speed , 3
+/speak2 0 , /s5 , ss
+/speak2 0 , /s7 ,
+/speak2 0 , /s1 ,
+/speak2 2 , /s8 , gee
+/speak2 2 , /s6 , poo
+/speak2 2 , /s2 ,
+/speak2 2 , /s5 , pee
+/speak2 2 , /s1 , buing
+/speak2 3 , /s3 ,
+/speak2 3 , /s8 , ss
+/speak2 3 , /s6 ,
+/speak2 3 , /s2 , ss
+/speak2 3 , /s4 ,
+/speak2 3 , /speed , 3
+/speak2 3 , /s5 , ss
+/speak2 3 , /s7 ,
+/speak2 3 , /s1 ,
+/speak2 1 , /s8 , gee
+/speak2 1 , /s2 ,
+/speak2 1 , /s5 , pee
diff --git a/instruments/speakerboxx/speakerboxx.pd b/instruments/speakerboxx/speakerboxx.pd
new file mode 100644
index 0000000..5b4f2f3
--- /dev/null
+++ b/instruments/speakerboxx/speakerboxx.pd
@@ -0,0 +1,191 @@
+#N canvas 90 183 899 335 10;
+#X obj 2 52 cnv 15 676 40 empty empty speakerboxx 20 12 0 14 -225271
+-66577 0;
+#X obj 372 34 select 0 1 2 3 4 5 6 7;
+#X symbolatom 25 140 10 0 0 0 - - -;
+#X obj 13 197 symbol .;
+#N canvas 400 230 450 300 soundengine 0;
+#X obj 161 200 klatt~;
+#X obj 161 80 phones2holmes f;
+#X obj 161 177 holmes;
+#X obj 179 52 guessphones;
+#X obj 160 271 outlet~;
+#X obj 55 17 inlet;
+#X obj 180 24 pack s;
+#X text 232 24 make list;
+#X obj 187 118 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 189 142 metro 10;
+#X obj 304 84 inlet;
+#X text 315 63 speed;
+#X obj 364 82 inlet;
+#X text 371 59 onoff;
+#X obj 298 143 loadbang;
+#X obj 297 173 f 1;
+#X obj 74 49 t b s b;
+#X msg 110 71 clear;
+#X connect 0 0 4 0;
+#X connect 1 0 2 0;
+#X connect 2 0 0 0;
+#X connect 3 0 1 0;
+#X connect 5 0 16 0;
+#X connect 6 0 3 0;
+#X connect 8 0 9 0;
+#X connect 9 0 2 0;
+#X connect 10 0 9 1;
+#X connect 12 0 8 0;
+#X connect 14 0 15 0;
+#X connect 15 0 8 0;
+#X connect 16 0 0 0;
+#X connect 16 1 6 0;
+#X connect 16 2 17 0;
+#X connect 17 0 2 0;
+#X restore 118 305 pd soundengine;
+#X floatatom 428 287 5 0 0 0 speed - -;
+#X obj 25 246 s \$0-speak;
+#X symbolatom 124 140 10 0 0 0 - - -;
+#X obj 112 197 symbol .;
+#X obj 124 246 s \$0-speak;
+#X symbolatom 230 140 10 0 0 0 - - -;
+#X obj 218 197 symbol .;
+#X obj 230 246 s \$0-speak;
+#X symbolatom 332 141 10 0 0 0 - - -;
+#X obj 320 198 symbol .;
+#X obj 332 247 s \$0-speak;
+#X symbolatom 433 141 10 0 0 0 - - -;
+#X obj 421 198 symbol .;
+#X obj 433 247 s \$0-speak;
+#X symbolatom 530 141 10 0 0 0 - - -;
+#X obj 518 198 symbol .;
+#X obj 530 247 s \$0-speak;
+#X symbolatom 627 141 10 0 0 0 - - -;
+#X obj 615 198 symbol .;
+#X obj 627 247 s \$0-speak;
+#X symbolatom 728 140 10 0 0 0 - - -;
+#X obj 716 197 symbol .;
+#X obj 728 246 s \$0-speak;
+#X obj 118 274 r \$0-speak;
+#X obj 728 223 symbol .;
+#X obj 627 224 symbol .;
+#X obj 530 224 symbol .;
+#X obj 433 224 symbol .;
+#X obj 332 224 symbol .;
+#X obj 230 223 symbol .;
+#X obj 124 223 symbol .;
+#X obj 25 223 symbol .;
+#X obj 674 71 inlet;
+#X obj 276 8 inlet;
+#X obj 54 306 outlet~;
+#N canvas 620 454 450 300 saves 0;
+#X obj 191 184 originator \$1 \$0;
+#X obj 33 16 inlet;
+#X obj 168 107 r \$0-presets;
+#X obj 54 95 s \$0-OSC;
+#X msg 207 152 substate \$1;
+#X obj 33 56 OSCroute \$1;
+#X obj 158 139 t b f;
+#X msg 154 160 set m;
+#X obj 35 137 s \$0-presets-in;
+#X obj 12 111 OSCroute /presets;
+#X obj 289 14 inlet;
+#X obj 291 55 select copy paste;
+#X msg 245 87 symbol copy;
+#X msg 336 111 symbol paste;
+#X obj 292 35 symbol;
+#X obj 347 77 t b b;
+#X connect 1 0 0 1;
+#X connect 1 0 5 0;
+#X connect 2 0 6 0;
+#X connect 4 0 0 0;
+#X connect 5 0 9 0;
+#X connect 6 0 7 0;
+#X connect 6 1 4 0;
+#X connect 7 0 0 0;
+#X connect 9 0 8 0;
+#X connect 10 0 14 0;
+#X connect 11 0 12 0;
+#X connect 11 1 15 0;
+#X connect 12 0 0 0;
+#X connect 13 0 0 0;
+#X connect 14 0 11 0;
+#X connect 15 0 7 0;
+#X connect 15 1 13 0;
+#X restore 672 98 pd saves;
+#X floatatom 245 284 5 0 0 0 presets #0-presets-in #0-presets;
+#X obj 518 171 commun /s6 \$0;
+#X symbolatom 22 285 10 0 0 0 - - -;
+#X obj 627 290 bng 15 250 50 0 empty empty copy 0 -6 0 8 -262144 -1
+-1;
+#X msg 626 312 copy;
+#X msg 675 314 paste;
+#X obj 758 290 bng 15 250 50 0 empty empty paste 0 -6 0 8 -262144 -1
+-1;
+#X obj 13 170 commun /s1 \$0;
+#X obj 112 170 commun /s2 \$0;
+#X obj 218 170 commun /s3 \$0;
+#X obj 320 171 commun /s4 \$0;
+#X obj 421 171 commun /s5 \$0;
+#X obj 615 171 commun /s7 \$0;
+#X obj 716 170 commun /s8 \$0;
+#X obj 472 286 commun /speed \$0;
+#X connect 1 0 36 0;
+#X connect 1 1 35 0;
+#X connect 1 2 34 0;
+#X connect 1 3 33 0;
+#X connect 1 4 32 0;
+#X connect 1 5 31 0;
+#X connect 1 6 30 0;
+#X connect 1 7 29 0;
+#X connect 2 0 36 1;
+#X connect 2 0 48 0;
+#X connect 3 0 2 0;
+#X connect 4 0 39 0;
+#X connect 5 0 4 1;
+#X connect 5 0 55 0;
+#X connect 7 0 35 1;
+#X connect 7 0 49 0;
+#X connect 8 0 7 0;
+#X connect 10 0 34 1;
+#X connect 10 0 50 0;
+#X connect 11 0 10 0;
+#X connect 13 0 33 1;
+#X connect 13 0 51 0;
+#X connect 14 0 13 0;
+#X connect 16 0 32 1;
+#X connect 16 0 52 0;
+#X connect 17 0 16 0;
+#X connect 19 0 31 1;
+#X connect 19 0 42 0;
+#X connect 20 0 19 0;
+#X connect 22 0 30 1;
+#X connect 22 0 53 0;
+#X connect 23 0 22 0;
+#X connect 25 0 29 1;
+#X connect 25 0 54 0;
+#X connect 26 0 25 0;
+#X connect 28 0 4 0;
+#X connect 28 0 43 0;
+#X connect 29 0 27 0;
+#X connect 30 0 24 0;
+#X connect 31 0 21 0;
+#X connect 32 0 18 0;
+#X connect 33 0 15 0;
+#X connect 34 0 12 0;
+#X connect 35 0 9 0;
+#X connect 36 0 6 0;
+#X connect 37 0 40 0;
+#X connect 38 0 1 0;
+#X connect 42 0 20 0;
+#X connect 44 0 45 0;
+#X connect 45 0 40 1;
+#X connect 46 0 40 1;
+#X connect 47 0 46 0;
+#X connect 48 0 3 0;
+#X connect 49 0 8 0;
+#X connect 50 0 11 0;
+#X connect 51 0 14 0;
+#X connect 52 0 17 0;
+#X connect 53 0 23 0;
+#X connect 54 0 26 0;
+#X connect 55 0 5 0;
+#X coords 0 0 1 1 680 80 1;
diff --git a/instruments/speakerboxx/usespeaker.pd b/instruments/speakerboxx/usespeaker.pd
new file mode 100644
index 0000000..e0d01c2
--- /dev/null
+++ b/instruments/speakerboxx/usespeaker.pd
@@ -0,0 +1,99 @@
+#N canvas 119 127 1074 605 10;
+#X obj 12 525 careGUI;
+#X floatatom 146 79 5 0 0 0 - - -;
+#X obj 322 21 tgl 24 0 empty empty empty 0 -6 0 8 -260818 -1 -1 1 1
+;
+#X obj 29 359 ezdac~;
+#X floatatom 369 34 5 0 0 0 - - -;
+#X obj 84 340 catch~ r;
+#X obj 22 341 catch~ l;
+#X obj 58 254 gpans~;
+#X obj 57 276 throw~ l;
+#X obj 115 275 throw~ r;
+#X obj 325 576 sendOSC;
+#X obj 222 352 gpans~;
+#X obj 279 373 throw~ r;
+#X obj 216 373 throw~ l;
+#X obj 183 319 r beat;
+#X obj 146 104 s beat;
+#X obj 544 538 hradio 32 0 0 15 \$0-preset empty empty 0 -6 1152 8
+-262144 -1 -1 1;
+#X obj 490 499 r \$0-preset;
+#X obj 345 452 gpans~;
+#X obj 402 473 throw~ r;
+#X obj 339 473 throw~ l;
+#X obj 306 419 r beat;
+#X obj 72 135 speakerboxx /outkast;
+#X obj 255 500 loadbang;
+#X obj 471 52 cnv 15 280 30 empty empty SPEAKERBOXX 24 14 0 24 -233017
+-66577 0;
+#X obj 334 520 netcontrol /* presets;
+#X obj 345 50 metro 200;
+#X obj 240 51 f 0;
+#X obj 272 50 + 1;
+#X obj 241 81 select 7;
+#X obj 191 80 mod 8;
+#X msg 304 81 -1;
+#X text 757 519 PRESET SELECTA;
+#X obj 26 33 ratts;
+#X msg 325 498 connect localhost 3001;
+#X msg 379 576 disconnect;
+#X obj 931 99 dumpOSC 3001;
+#X obj 236 233 speakerboxx /speak;
+#X obj 358 332 speakerboxx /speak2;
+#X obj 178 358 + 0;
+#X floatatom 204 405 5 0 0 0 - - -;
+#X obj 275 405 + 0;
+#X floatatom 225 446 5 0 0 0 - - -;
+#X obj 271 467 mod 8;
+#X obj 168 423 mod 8;
+#X obj 143 470 random 7;
+#X obj 142 447 select 7;
+#X obj 170 492 random 7;
+#X connect 1 0 15 0;
+#X connect 1 0 22 0;
+#X connect 2 0 26 0;
+#X connect 4 0 26 1;
+#X connect 5 0 3 1;
+#X connect 6 0 3 0;
+#X connect 7 0 8 0;
+#X connect 7 1 9 0;
+#X connect 11 0 13 0;
+#X connect 11 1 12 0;
+#X connect 14 0 39 0;
+#X connect 14 0 46 0;
+#X connect 17 0 25 1;
+#X connect 18 0 20 0;
+#X connect 18 1 19 0;
+#X connect 21 0 41 0;
+#X connect 22 0 7 0;
+#X connect 22 0 7 1;
+#X connect 23 0 34 0;
+#X connect 25 0 10 0;
+#X connect 26 0 27 0;
+#X connect 27 0 28 0;
+#X connect 27 0 30 0;
+#X connect 28 0 27 1;
+#X connect 29 0 31 0;
+#X connect 30 0 1 0;
+#X connect 30 0 29 0;
+#X connect 31 0 28 0;
+#X connect 34 0 10 0;
+#X connect 35 0 10 0;
+#X connect 36 0 22 1;
+#X connect 36 0 37 1;
+#X connect 36 0 38 1;
+#X connect 37 0 11 0;
+#X connect 37 0 11 1;
+#X connect 38 0 18 0;
+#X connect 38 0 18 1;
+#X connect 39 0 44 0;
+#X connect 40 0 39 1;
+#X connect 41 0 43 0;
+#X connect 42 0 41 1;
+#X connect 43 0 38 0;
+#X connect 44 0 37 0;
+#X connect 45 0 40 0;
+#X connect 46 0 45 0;
+#X connect 46 0 47 0;
+#X connect 47 0 42 0;
diff --git a/instruments/user.pd b/instruments/user.pd
new file mode 100644
index 0000000..673ad9a
--- /dev/null
+++ b/instruments/user.pd
@@ -0,0 +1,130 @@
+#N canvas 132 37 1005 694 10;
+#X obj 25 178 sseq16n;
+#X obj 246 85 r \$0-anal;
+#X obj 25 479 s \$0-anal;
+#X obj 292 529 ezdac~;
+#X obj 237 489 gpans~;
+#X obj 18 94 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
+;
+#X obj 18 118 metro 100;
+#X obj 17 139 counter 0 15;
+#X floatatom 89 94 5 0 0 0 - - -;
+#X obj 25 439 - 12;
+#X floatatom 65 434 5 0 0 0 - - -;
+#X obj 246 142 makenote 90 100;
+#X obj 350 117 - 10;
+#X obj 492 21 sseq16;
+#X obj 627 139 makenote 90 100;
+#X obj 731 114 - 10;
+#X obj 421 488 gpans~;
+#X obj 497 142 select 0;
+#X floatatom 292 117 5 0 0 0 - - -;
+#X floatatom 720 77 5 0 0 0 - - -;
+#X obj 25 411 select 0;
+#X obj 88 182 analosc /erster;
+#X obj 124 146 dumpOSC 3000;
+#X obj 680 631 sendOSC 3000;
+#X msg 690 609 connect localhost 3000;
+#X obj 25 8 careGUI ./settings.dat;
+#X obj 241 385 adsr-engine;
+#X obj 818 431 print analout;
+#X obj 107 383 analogue-engine;
+#X obj 179 422 *~;
+#X obj 148 572 table scope;
+#X obj 81 526 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 77 552 tabwrite~ scope;
+#X msg 576 377 \; scope resize 44100;
+#X msg 513 335 level \$1;
+#X msg 220 163 freq \$1;
+#X obj 513 171 * 0.00787;
+#X obj 333 384 analogue-engine;
+#X obj 405 423 *~;
+#X msg 502 364 level \$1;
+#X msg 425 346 freq \$1;
+#X obj 695 173 * 0.00787;
+#X obj 467 386 adsr-engine;
+#X obj 810 27 rees;
+#X obj 700 14 r 1-globals;
+#X floatatom 854 585 5 0 0 0 - - -;
+#X msg 853 559 \$1;
+#X obj 636 492 int;
+#X floatatom 625 509 5 0 0 0 - - -;
+#X obj 810 488 pack 0 0;
+#X msg 809 512 \$2 \$1;
+#X floatatom 883 481 5 0 0 0 - - -;
+#X floatatom 777 489 5 0 0 0 - - -;
+#X obj 808 460 ctlin;
+#X obj 641 442 ctlin;
+#X obj 639 466 scale 0 128 1 5;
+#X obj 851 534 route 15 14;
+#X obj 424 548 netcontrol /erster inst;
+#X obj 881 620 loadbang;
+#X obj 634 547 netcontrol /erster preset;
+#X obj 322 618 netcontrol /erster-adsr a;
+#X connect 0 0 20 0;
+#X connect 1 0 11 0;
+#X connect 4 0 3 0;
+#X connect 4 1 3 1;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 7 0 0 0;
+#X connect 7 0 13 0;
+#X connect 8 0 6 1;
+#X connect 8 0 12 0;
+#X connect 8 0 15 0;
+#X connect 9 0 2 0;
+#X connect 10 0 9 1;
+#X connect 11 0 35 0;
+#X connect 11 1 36 0;
+#X connect 12 0 11 2;
+#X connect 13 0 17 0;
+#X connect 14 0 40 0;
+#X connect 14 1 41 0;
+#X connect 15 0 14 2;
+#X connect 16 0 3 0;
+#X connect 16 1 3 1;
+#X connect 17 1 14 0;
+#X connect 18 0 11 1;
+#X connect 19 0 14 1;
+#X connect 20 1 9 0;
+#X connect 21 0 26 0;
+#X connect 21 0 28 0;
+#X connect 21 0 37 0;
+#X connect 21 0 42 0;
+#X connect 22 0 21 0;
+#X connect 24 0 23 0;
+#X connect 26 0 29 1;
+#X connect 28 0 29 0;
+#X connect 29 0 4 0;
+#X connect 29 0 4 1;
+#X connect 29 0 32 0;
+#X connect 31 0 32 0;
+#X connect 34 0 26 0;
+#X connect 35 0 28 0;
+#X connect 36 0 34 0;
+#X connect 37 0 38 0;
+#X connect 38 0 16 0;
+#X connect 38 0 16 1;
+#X connect 39 0 42 0;
+#X connect 40 0 37 0;
+#X connect 41 0 39 0;
+#X connect 42 0 38 1;
+#X connect 44 0 13 1;
+#X connect 46 0 45 0;
+#X connect 47 0 48 0;
+#X connect 49 0 50 0;
+#X connect 50 0 56 0;
+#X connect 53 0 49 0;
+#X connect 53 0 52 0;
+#X connect 53 1 49 1;
+#X connect 53 1 51 0;
+#X connect 54 0 55 0;
+#X connect 55 0 47 0;
+#X connect 56 0 46 0;
+#X connect 56 0 59 1;
+#X connect 56 1 57 1;
+#X connect 57 0 23 0;
+#X connect 58 0 24 0;
+#X connect 59 0 23 0;
+#X connect 60 0 23 0;