#N canvas 361 57 694 548 10; #X obj 26 8 inlet; #X obj 256 209 outlet; #N canvas 539 471 610 407 finish 0; #X obj 77 180 until; #X obj 127 206 + 1; #X text 210 158 first 3 objects are xlets; #X obj 38 26 inlet; #X obj 38 62 moses 1; #X obj 77 157 trigger anything bang; #X text 15 363 Connect all wrapper object's right inlet to [receive \$0-in2]; #X text 360 282 Connect final object to [send \$0-out]; #X msg 200 177 5; #X obj 373 207 + 4; #X obj 372 333 outlet; #X msg 483 228 connect 0 0 5 0; #X msg 373 227 connect \$1 0 4 0; #X obj 77 93 trigger anything anything bang; #X msg 144 249 connect 1 0 \$1 1; #X obj 77 206 float; #X connect 0 0 15 0; #X connect 1 0 15 1; #X connect 3 0 4 0; #X connect 4 1 13 0; #X connect 5 0 0 0; #X connect 5 1 8 0; #X connect 8 0 15 1; #X connect 9 0 12 0; #X connect 11 0 10 0; #X connect 12 0 10 0; #X connect 13 0 5 0; #X connect 13 1 9 0; #X connect 13 2 11 0; #X connect 14 0 10 0; #X connect 15 0 1 0; #X connect 15 0 14 0; #X restore 106 443 pd finish; #X obj 26 67 send \$0-in1; #X obj 100 8 inlet; #X obj 100 67 send \$0-in2; #X obj 26 208 outlet~; #X text 122 97 <-- open this subpatch to see the instances; #N canvas 138 22 601 588 \$0-voices~ 0; #X restore 26 96 pd \$0-voices~; #X obj 136 209 outlet~; #X obj 26 124 catch~ \$0-audioL; #X obj 136 124 catch~ \$0-audioR; #X obj 256 124 receive \$0-voicemsg; #X obj 168 386 until; #X obj 206 413 + 1; #X obj 168 413 float; #X msg 207 386 0; #X obj 27 261 float \$1; #X obj 536 514 send; #X obj 168 358 trigger 0 bang; #X obj 27 239 loadbang; #X msg 46 443 loadbang; #X msg 509 443 clear; #N canvas 73 546 512 291 xlets 0; #X obj 70 -124 inlet; #X obj 70 70 outlet; #X text 101 -86 This will create fake "in/outlets" as senders and receivers. ; #X obj 70 -32 float \$0; #X msg 70 -6 obj 10 10 receive \$1-in1 \, obj 400 10 receive \$1-in2 \, obj 10 560 throw~ \$1-audioL \, obj 380 560 throw~ \$1-audioR \, obj 500 560 send \$1-voicemsg; #X connect 0 0 3 0; #X connect 3 0 4 0; #X connect 4 0 1 0; #X restore 444 443 pd xlets; #X obj 27 285 moses 1; #X text 79 283 no need to generate anything for 0 instances; #X obj 557 442 symbol pd-\$0-voices~; #N canvas 1048 429 450 300 connect 0; #X obj 89 17 inlet; #X obj 89 102 + 5; #X obj 89 248 outlet; #X msg 89 123 connect \$1 1 2 0 \, connect \$1 2 3 0; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X restore 340 443 pd connect xlets; #X obj 10 241 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #N canvas 934 484 551 402 create+connect 0; #X obj 29 10 inlet; #X obj 167 139 list append \$3 \$4 \$5 \$6; #X obj 347 69 float \$1; #X obj 224 93 + 30; #X obj 29 181 + 5; #X obj 281 70 symbol \$2; #N canvas 40 466 316 307 expandpath 0; #X obj 59 16 inlet; #X obj 55 271 outlet; #X obj 59 98 list append; #X msg 58 153 symbol \$1/\$2; #X obj 59 43 trigger bang anything; #X obj 58 67 ggee/getdir 3; #X connect 0 0 4 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X connect 4 0 5 0; #X connect 4 1 2 1; #X connect 5 0 2 0; #X restore 281 90 pd expandpath; #X obj 225 347 outlet; #X obj 167 115 pack float float symbol float; #X obj 224 71 * 50; #X msg 167 166 obj 100 \$2 voices-wrap~ \$3 \$1 \$4 \$5 \$6 \$7 \$8 ; #X msg 39 296 connect \$1 1 2 0; #X msg 29 318 connect \$1 2 3 0; #X obj 77 226 pack float float; #X obj 29 37 trigger anything anything anything anything bang bang ; #X obj 111 184 + 4; #X msg 77 248 connect \$2 0 \$1 0; #X obj 38 203 moses 6; #X connect 0 0 14 0; #X connect 1 0 10 0; #X connect 2 0 8 3; #X connect 3 0 8 1; #X connect 4 0 11 0; #X connect 4 0 12 0; #X connect 4 0 17 0; #X connect 5 0 6 0; #X connect 6 0 8 2; #X connect 8 0 1 0; #X connect 9 0 3 0; #X connect 10 0 7 0; #X connect 11 0 7 0; #X connect 12 0 7 0; #X connect 13 0 16 0; #X connect 14 0 4 0; #X connect 14 1 15 0; #X connect 14 2 8 0; #X connect 14 3 9 0; #X connect 14 4 5 0; #X connect 14 5 2 0; #X connect 15 0 13 1; #X connect 16 0 7 0; #X connect 17 1 13 0; #X restore 168 443 pd create+connect instances; #X obj 66 307 trigger bang anything anything anything bang bang bang ; #X connect 0 0 3 0; #X connect 2 0 18 0; #X connect 4 0 5 0; #X connect 10 0 6 0; #X connect 11 0 9 0; #X connect 12 0 1 0; #X connect 13 0 15 0; #X connect 14 0 15 1; #X connect 15 0 14 0; #X connect 15 0 29 0; #X connect 16 0 15 1; #X connect 17 0 24 0; #X connect 19 0 13 0; #X connect 19 1 16 0; #X connect 20 0 17 0; #X connect 21 0 18 0; #X connect 22 0 18 0; #X connect 23 0 18 0; #X connect 24 1 30 0; #X connect 26 0 18 1; #X connect 27 0 18 0; #X connect 28 0 17 0; #X connect 29 0 18 0; #X connect 30 0 21 0; #X connect 30 1 2 0; #X connect 30 2 19 0; #X connect 30 4 23 0; #X connect 30 5 22 0; #X connect 30 6 26 0;