#N struct template-toplevel float x float y float voiceno array pitch template-pitch array amp template-amp; #N struct template-pitch float x float y float w; #N struct template-amp float x float y float w; #N canvas 123 204 908 404 12; #X declare -path ../../lib -path . -path lib -path score; #X declare -path ../lib -path . -path score \;; #N canvas 213 86 555 210 template-toplevel 0; #X obj 122 114 plot pitch voiceno 3 10 0; #X obj 122 141 plot amp 0 3 10 0; #X obj 122 89 filledpolygon 0 0 3 3 0 0 -3 -3 0 0 3; #X obj 122 49 struct template-toplevel float x float y float voiceno array pitch template-pitch array amp template-amp; #X restore 481 279 pd template-toplevel; #X msg 703 195 \; pd-data clear; #N canvas 0 0 373 137 template-amp 0; #X obj 60 49 struct template-amp float x float y float w; #X restore 481 301 pd template-amp; #N canvas 350 145 403 120 template-pitch 0; #X obj 61 49 struct template-pitch float x float y float w; #X restore 481 324 pd template-pitch; #X obj 730 17 loadbang; #X msg 730 45 60; #X obj 729 103 expr 1000 / $f1; #X floatatom 730 76 0 0 0 0 - - -; #X obj 729 155 s delay-multiplier; #X floatatom 741 128 0 0 0 0 - - -; #N canvas 300 316 451 521 data 0; #X scalar template-toplevel 32 85.25 900 \; 0 0 12 \; 10 0 12 \; \; 0 0 0 \; 10 0 2.5 \; 11 0 0 \; \;; #X scalar template-toplevel 43 79.25 990 \; 0 0 12 \; 10 0 12 \; \; 0 0 2.5 \; 10 0 2.5 \; 11 0 0 \; \;; #X scalar template-toplevel 67 42.5 90 \; 0 65 12 \; 100 10 0 \; 100 10 12 \; 230 50 0 \; 230 10 3 \; 240 60 0 \; 240 25 10 \; 250 60 0 \; 250 37 10 \; 260 65 0.5 \; 285 65 0.5 \; \; 1 0 2 \; 103 0 1 \; 195 0 2 \; 220 0 0.75 \; 225 0 1.25 \; 248 0 2.5 \; 251 0 2.25 \; 255 0 0 \; 256 0 1.5 \; 260 0 0 \; 261 0 2 \; 265 0 0 \; 266 0 2.5 \; 270 0 0 \; 271 0 3 \; 275 0 0 \; \;; #X scalar template-toplevel 93 79.25 900 \; 0 5 0.25 \; 60 5 0.25 \; \; 0 0 0 \; 28 -0.25 3.5 \; 58 -0.25 0 \; \;; #X scalar template-toplevel 171 104.25 900 \; 0 0 12 \; 70 -20 12 \; \; 0 0 0 \; 10 0 2.5 \; 20 0 0 \; 30 0 0 \; 40 0 2.5 \; 50 0 0 \; 60 0 2.5 \; 70 0 0 \; \;; #X scalar template-toplevel 348 62.75 909 \; 0 0 12 \; 50 0 12 \; \; 0 0 4 \; 10 0 2.5 \; 50 0 0 \; \;; #X coords 0 130.25 1 130 0 0 0; #X restore 481 256 pd data; #N canvas 168 3 662 737 audio 0; #X msg 200 188 next; #X msg 182 122 traverse pd-data \, next; #X obj 182 215 pointer template-toplevel; #X obj 182 248 t p p; #X obj 182 277 get template-toplevel voiceno; #X obj 182 306 pack 0 p; #X obj 182 56 route start stop; #X obj 182 89 t b b; #X obj 200 162 r next-evt; #X obj 182 335 route 0 9 90 900 99 909 990; #X obj 130 364 voice; #X obj 130 393 voice; #X obj 130 422 voice; #X obj 130 451 voice; #X msg 464 159 \; reset-stop stop \; time-of-last-evt 0 \; pd-data sort; #X obj 308 608 dbtorms; #X obj 308 655 line~; #X obj 130 581 *~; #X obj 130 611 dac~; #X obj 308 632 pack 0 50; #X floatatom 331 495 0 0 0 0 - - -; #X obj 312 522 rev1~; #X obj 331 470 r rev-decay; #X obj 455 446 r rev-amp; #X obj 455 496 dbtorms; #X obj 455 544 line~; #X obj 455 520 pack 0 50; #X obj 312 549 *~; #X floatatom 455 471 0 0 0 0 - - -; #X msg 250 82 \; reset-seq bang; #X obj 464 131 r reset-seq; #X obj 182 28 r sequencer; #X obj 130 480 voice; #X obj 130 509 voice; #X obj 130 538 voice; #X obj 308 582 r tgp~; #X obj 573 292 r reset; #X msg 572 319 \; rev-amp 0 \; rev-decay 0; #X obj 36 682 declare -path ../../lib -path . -path lib -path score ; #X connect 0 0 2 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 1 5 1; #X connect 4 0 5 0; #X connect 5 0 9 0; #X connect 6 0 7 0; #X connect 6 1 29 0; #X connect 7 0 1 0; #X connect 7 1 29 0; #X connect 8 0 0 0; #X connect 9 0 10 1; #X connect 9 1 11 1; #X connect 9 2 12 1; #X connect 9 3 13 1; #X connect 9 4 32 1; #X connect 9 5 33 1; #X connect 9 6 34 1; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 12 0 13 0; #X connect 13 0 32 0; #X connect 15 0 19 0; #X connect 16 0 17 1; #X connect 17 0 18 0; #X connect 17 0 18 1; #X connect 19 0 16 0; #X connect 20 0 21 1; #X connect 21 0 27 0; #X connect 22 0 20 0; #X connect 23 0 28 0; #X connect 24 0 26 0; #X connect 25 0 27 1; #X connect 26 0 25 0; #X connect 27 0 17 0; #X connect 28 0 24 0; #X connect 30 0 14 0; #X connect 31 0 6 0; #X connect 32 0 33 0; #X connect 33 0 34 0; #X connect 34 0 17 0; #X connect 34 0 21 0; #X connect 35 0 15 0; #X connect 36 0 37 0; #X restore 481 346 pd audio; #X msg 482 212 \; sequencer start; #X floatatom 398 180 5 0 0 0 - - -; #X obj 398 204 s q; #X msg 482 171 \; pd-data read data2.txt; #X msg 482 127 \; pd-data read data1.txt; #X obj 397 128 r q; #X msg 398 154 set \$1; #X msg 421 64 \; pd-data write \$1; #X obj 421 38 savepanel; #X obj 421 15 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1 -1; #X obj 574 18 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1 -1; #X obj 574 38 openpanel; #X msg 574 64 \; pd-data read \$1; #X text 440 14 <- save; #X text 594 18 <- load; #X text 140 267 click to; #X obj 24 280 score-editor; #X text 141 281 <- open; #X obj 17 28 sequencer; #X obj 24 257 bng 20 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X text 22 239 START; #X text 33 223 -----test score----; #X obj 23 358 declare -path ../lib -path . -path score \;; #X connect 4 0 5 0; #X connect 5 0 7 0; #X connect 6 0 8 0; #X connect 6 0 9 0; #X connect 7 0 6 0; #X connect 13 0 14 0; #X connect 17 0 18 0; #X connect 18 0 13 0; #X connect 20 0 19 0; #X connect 21 0 20 0; #X connect 22 0 23 0; #X connect 23 0 24 0; #X connect 31 0 28 0;