#N canvas 313 155 762 544 10;
#X obj 448 121 s \$0-shouldSteal;
#X obj 478 208 + 1;
#X obj 448 281 s \$0-currentVoiceId;
#X obj 181 490 outlet pitch;
#X obj 311 490 outlet velocity;
#X obj 448 35 loadbang;
#X obj 448 78 \$2;
#X obj 45 490 outlet id;
#X obj 45 457 + 1;
#X obj 448 185 r \$0-voiceId++;
#X obj 448 208 f 0;
#X obj 448 258 mod 65535;
#X obj 448 344 table \$0-pitches \$1;
#X obj 448 374 table \$0-used \$1;
#X obj 448 404 table \$0-ids \$1;
#X obj 448 55 t b b;
#X obj 564 121 s \$0-maxVoiceId;
#X msg 564 98 65535;
#X obj 499 236 r \$0-maxVoiceId;
#X obj 45 70 route stop clear;
#X obj 153 152 unpack f f;
#X obj 273 208 f;
#X obj 273 35 inlet velocity;
#X obj 198 291 > 0;
#X obj 198 311 t a a;
#X obj 260 351 spigot 0;
#X obj 272 229 t a a a;
#X obj 153 351 spigot 0;
#X obj 198 331 == 0;
#X obj 153 201 t a a;
#X obj 45 35 inlet pitch;
#X obj 448 98 != 0;
#N canvas 696 131 696 703 NoteOff 0;
#X obj 159 927 outlet pitch;
#X obj 247 927 outlet velocity;
#X obj 58 927 outlet id;
#N canvas 0 22 317 402 count 0;
#X obj 31 37 inlet;
#X obj 70 217 t f f;
#X obj 70 277 spigot 0;
#X obj 115 247 <;
#X obj 70 127 t f f;
#X obj 70 187 f;
#X obj 100 187 + 1;
#X msg 70 157 0;
#X obj 97 338 outlet;
#X obj 31 97 moses 1;
#X obj 31 67 int;
#X obj 70 307 t f f;
#X connect 0 0 10 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 11 0;
#X connect 3 0 2 1;
#X connect 4 0 7 0;
#X connect 4 1 3 1;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 5 0;
#X connect 9 1 4 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
#X connect 11 1 8 0;
#X restore 157 226 pd count;
#X obj 157 206 \$1;
#X obj 157 246 t f f f f;
#X msg 104 554 0;
#X obj 282 292 tabread \$0-used;
#X obj 392 292 tabread \$0-ids;
#X obj 269 596 f;
#X msg 176 554 1;
#X obj 70 111 t a a b b;
#X obj 157 166 unpack f f;
#X obj 157 186 t b f;
#X obj 157 292 tabread \$0-pitches;
#X obj 157 408 ==;
#X obj 157 434 &&;
#X obj 282 408 &&;
#X obj 562 272 r \$0-maxVoiceId;
#X obj 547 300 f;
#X obj 392 378 <;
#X obj 157 463 sel 1;
#X obj 157 493 t b b b;
#X obj 407 347 f;
#X obj 392 317 t f f;
#X obj 59 632 spigot 0;
#X obj 98 708 tabwrite \$0-used;
#X obj 78 828 tabwrite \$0-ids;
#X obj 78 729 t b b;
#X obj 93 778 r \$0-currentVoiceId;
#X obj 105 749 s \$0-voiceId++;
#X obj 78 798 f;
#X obj 59 655 t a b b;
#X msg 98 688 0;
#X obj 58 897 f;
#X obj 59 865 t b a b;
#X obj 159 897 unpack f f;
#X msg 247 897 0;
#X obj 70 31 inlet pitch;
#X obj 115 56 inlet velocity;
#X obj 70 89 pack f f;
#X obj 104 596 t a;
#X connect 3 0 5 0;
#X connect 4 0 3 0;
#X connect 5 0 14 0;
#X connect 5 1 7 0;
#X connect 5 2 8 0;
#X connect 5 3 9 1;
#X connect 6 0 41 0;
#X connect 6 0 9 0;
#X connect 7 0 17 0;
#X connect 8 0 24 0;
#X connect 9 0 26 1;
#X connect 9 0 27 1;
#X connect 9 0 34 1;
#X connect 10 0 41 0;
#X connect 11 0 25 0;
#X connect 11 1 12 0;
#X connect 11 2 6 0;
#X connect 11 3 19 0;
#X connect 12 0 13 0;
#X connect 13 0 4 0;
#X connect 13 1 15 1;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 21 0;
#X connect 17 0 16 1;
#X connect 18 0 19 1;
#X connect 19 0 20 1;
#X connect 20 0 17 1;
#X connect 21 0 22 0;
#X connect 22 0 9 0;
#X connect 22 1 10 0;
#X connect 22 2 23 0;
#X connect 23 0 20 1;
#X connect 24 0 20 0;
#X connect 24 1 23 1;
#X connect 25 0 32 0;
#X connect 28 0 31 0;
#X connect 28 1 30 0;
#X connect 29 0 31 1;
#X connect 31 0 27 0;
#X connect 32 0 35 0;
#X connect 32 1 28 0;
#X connect 32 2 33 0;
#X connect 33 0 26 0;
#X connect 34 0 2 0;
#X connect 35 0 34 0;
#X connect 35 1 36 0;
#X connect 35 2 37 0;
#X connect 36 0 0 0;
#X connect 37 0 1 0;
#X connect 38 0 40 0;
#X connect 39 0 40 1;
#X connect 40 0 11 0;
#X connect 41 0 25 1;
#X restore 153 381 pd NoteOff;
#N canvas 596 156 499 510 Stop 0;
#X obj 52 45 inlet;
#N canvas 0 22 317 402 count 0;
#X obj 31 37 inlet;
#X obj 70 217 t f f;
#X obj 70 277 spigot 0;
#X obj 115 247 <;
#X obj 70 127 t f f;
#X obj 70 187 f;
#X obj 100 187 + 1;
#X msg 70 157 0;
#X obj 97 338 outlet;
#X obj 31 97 moses 1;
#X obj 31 67 int;
#X obj 70 307 t f f;
#X connect 0 0 10 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 11 0;
#X connect 3 0 2 1;
#X connect 4 0 7 0;
#X connect 4 1 3 1;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 5 0;
#X connect 9 1 4 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
#X connect 11 1 8 0;
#X restore 52 132 pd count;
#X obj 52 105 \$1;
#X obj 67 428 tabwrite \$0-used;
#X obj 52 75 t b b;
#X msg 128 114 0;
#X obj 128 136 s \$0-voiceId++;
#X obj 97 200 tabread \$0-used;
#X obj 97 222 != 0;
#X obj 52 157 t f f;
#X obj 52 251 spigot 0;
#X obj 83 351 outlet id;
#X obj 173 351 outlet pitch;
#X obj 307 351 outlet velocity;
#X msg 307 321 0;
#X obj 173 321 tabread \$0-pitches;
#X obj 52 273 t b f f f b;
#X obj 67 380 t b f;
#X msg 67 402 0;
#X obj 52 464 s \$0-voiceId++;
#X connect 0 0 4 0;
#X connect 1 0 9 0;
#X connect 2 0 1 0;
#X connect 4 0 2 0;
#X connect 4 1 5 0;
#X connect 5 0 6 0;
#X connect 7 0 8 0;
#X connect 8 0 10 1;
#X connect 9 0 10 0;
#X connect 9 1 7 0;
#X connect 10 0 16 0;
#X connect 14 0 13 0;
#X connect 15 0 12 0;
#X connect 16 0 19 0;
#X connect 16 1 17 0;
#X connect 16 2 11 0;
#X connect 16 3 15 0;
#X connect 16 4 14 0;
#X connect 17 0 18 0;
#X connect 17 1 3 1;
#X connect 18 0 3 0;
#X restore 45 381 pd Stop;
#N canvas 0 22 329 363 Clear 0;
#X obj 52 45 inlet;
#N canvas 0 22 317 402 count 0;
#X obj 31 37 inlet;
#X obj 70 217 t f f;
#X obj 70 277 spigot 0;
#X obj 115 247 <;
#X obj 70 127 t f f;
#X obj 70 187 f;
#X obj 100 187 + 1;
#X msg 70 157 0;
#X obj 97 338 outlet;
#X obj 31 97 moses 1;
#X obj 31 67 int;
#X obj 70 307 t f f;
#X connect 0 0 10 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 11 0;
#X connect 3 0 2 1;
#X connect 4 0 7 0;
#X connect 4 1 3 1;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 5 0;
#X connect 9 1 4 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
#X connect 11 1 8 0;
#X restore 52 135 pd count;
#X obj 52 105 \$1;
#X obj 52 301 tabwrite \$0-used;
#X obj 71 275 tabwrite \$0-ids;
#X msg 52 195 0;
#X obj 52 75 t b b;
#X msg 128 114 0;
#X obj 128 136 s \$0-voiceId++;
#X obj 52 225 t a a a;
#X obj 52 165 t b a a a;
#X obj 91 250 tabwrite \$0-pitches;
#X connect 0 0 6 0;
#X connect 1 0 10 0;
#X connect 2 0 1 0;
#X connect 5 0 9 0;
#X connect 6 0 2 0;
#X connect 6 1 7 0;
#X connect 7 0 8 0;
#X connect 9 0 3 0;
#X connect 9 1 4 0;
#X connect 9 2 11 0;
#X connect 10 0 5 0;
#X connect 10 1 3 1;
#X connect 10 2 4 1;
#X connect 10 3 11 1;
#X restore 91 152 pd Clear;
#N canvas 549 249 1276 703 NoteOn 0;
#N canvas 0 22 317 402 count 0;
#X obj 31 37 inlet;
#X obj 70 217 t f f;
#X obj 70 277 spigot 0;
#X obj 115 247 <;
#X obj 70 127 t f f;
#X obj 70 187 f;
#X obj 100 187 + 1;
#X msg 70 157 0;
#X obj 97 338 outlet;
#X obj 31 97 moses 1;
#X obj 31 67 int;
#X obj 70 307 t f f;
#X connect 0 0 10 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 11 0;
#X connect 3 0 2 1;
#X connect 4 0 7 0;
#X connect 4 1 3 1;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 5 0;
#X connect 9 1 4 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
#X connect 11 1 8 0;
#X restore 900 369 pd count;
#X obj 897 336 \$1;
#X obj 1050 624 &&;
#X obj 1115 590 <;
#X obj 1088 683 sel 1;
#X obj 1081 768 f;
#X obj 900 391 t f f f f;
#X obj 1080 821 s \$0-indexOn;
#X obj 989 557 t f f;
#X obj 973 701 spigot 0;
#X obj 982 628 &&;
#X obj 980 587 == 0;
#X obj 1050 646 t f f;
#X obj 1047 680 == 0;
#X obj 915 788 f;
#X obj 921 843 s \$0-indexOff;
#X obj 777 229 s \$0-indexOn;
#X obj 730 251 s \$0-indexOff;
#X obj 410 212 t a b b b;
#X obj 973 723 sel 1;
#X obj 1156 592 <;
#X obj 1184 557 f;
#X obj 1118 494 t f f f;
#X obj 1226 557 f;
#X obj 1184 499 t f f;
#X obj 966 804 s \$0-isFirstOff;
#X obj 973 745 t b b b;
#X msg 967 777 1;
#X msg 1167 739 1;
#X obj 1167 774 s \$0-isFirstOn;
#X obj 1088 705 t b b b;
#X msg 733 189 0;
#X obj 792 193 s \$0-isFirstOn;
#X obj 821 169 s \$0-isFirstOff;
#X obj 385 485 r \$0-isFirstOff;
#X obj 288 567 spigot 0;
#X obj 385 507 t f f;
#X obj 498 555 r \$0-isFirstOn;
#X obj 404 681 spigot 0;
#X obj 460 637 &&;
#X obj 412 536 == 0;
#X obj 407 398 pack f f;
#X obj 407 420 t a a;
#X obj 291 966 outlet pitch;
#X obj 377 966 outlet velocity;
#X obj 138 592 r \$0-indexOff;
#X obj 278 785 f;
#X obj 305 794 unpack f f;
#X obj 489 724 r \$0-indexOn;
#X obj 428 776 f;
#X obj 489 746 t a a a a;
#X obj 138 614 t a a a a;
#X msg 130 832 1;
#X msg 472 902 1;
#X obj 505 634 r \$0-shouldSteal;
#X obj 460 659 spigot 0;
#X obj 221 974 outlet id;
#X obj 473 815 f;
#X obj 468 783 t b b b;
#X msg 393 939 0;
#X obj 280 596 t b b b a;
#X obj 258 630 t b b;
#X obj 267 677 r \$0-currentVoiceId;
#X obj 284 652 s \$0-voiceId++;
#X obj 255 703 f;
#X obj 999 430 tabread \$0-used;
#X obj 1118 432 tabread \$0-ids;
#X obj 427 874 tabwrite \$0-pitches;
#X obj 473 839 tabread \$0-pitches;
#X obj 122 799 tabwrite \$0-pitches;
#X obj 124 859 tabwrite \$0-used;
#X obj 196 889 tabwrite \$0-ids;
#X obj 621 923 tabwrite \$0-ids;
#X obj 632 752 t b b;
#X obj 641 799 r \$0-currentVoiceId;
#X obj 658 774 s \$0-voiceId++;
#X obj 629 825 f;
#X obj 404 703 t b b b a b;
#X obj 498 577 t b f;
#X obj 470 927 tabwrite \$0-used;
#X obj 1015 251 r \$0-maxVoiceId;
#X obj 1021 308 f;
#X obj 389 815 unpack f f;
#X obj 389 837 t a a;
#X obj 304 822 t a a;
#X obj 421 51 inlet pitch;
#X obj 665 41 inlet vel;
#X obj 457 610 f;
#X connect 0 0 6 0;
#X connect 1 0 0 0;
#X connect 2 0 12 0;
#X connect 3 0 10 1;
#X connect 4 0 30 0;
#X connect 5 0 7 0;
#X connect 6 1 65 0;
#X connect 6 2 66 0;
#X connect 6 3 5 1;
#X connect 6 3 14 1;
#X connect 8 0 11 0;
#X connect 8 1 2 0;
#X connect 9 0 19 0;
#X connect 10 0 9 0;
#X connect 11 0 10 0;
#X connect 12 0 13 0;
#X connect 12 1 4 0;
#X connect 13 0 9 1;
#X connect 14 0 15 0;
#X connect 18 0 41 0;
#X connect 18 1 1 0;
#X connect 18 2 81 0;
#X connect 18 3 31 0;
#X connect 19 0 26 0;
#X connect 20 0 2 1;
#X connect 21 0 3 1;
#X connect 22 0 3 0;
#X connect 22 1 20 0;
#X connect 22 2 21 1;
#X connect 22 2 23 1;
#X connect 23 0 20 1;
#X connect 24 0 21 0;
#X connect 24 1 23 0;
#X connect 26 0 14 0;
#X connect 26 1 27 0;
#X connect 26 2 21 0;
#X connect 27 0 25 0;
#X connect 28 0 29 0;
#X connect 30 0 5 0;
#X connect 30 1 28 0;
#X connect 30 2 23 0;
#X connect 31 0 17 0;
#X connect 31 0 16 0;
#X connect 31 0 32 0;
#X connect 31 0 33 0;
#X connect 34 0 36 0;
#X connect 35 0 60 0;
#X connect 36 0 35 1;
#X connect 36 1 40 0;
#X connect 37 0 78 0;
#X connect 38 0 77 0;
#X connect 39 0 55 0;
#X connect 40 0 87 0;
#X connect 41 0 42 0;
#X connect 42 0 35 0;
#X connect 42 1 38 0;
#X connect 45 0 51 0;
#X connect 46 0 56 0;
#X connect 47 0 84 0;
#X connect 47 1 44 0;
#X connect 48 0 50 0;
#X connect 49 0 56 0;
#X connect 50 0 49 1;
#X connect 50 0 57 1;
#X connect 50 1 72 1;
#X connect 50 2 79 1;
#X connect 50 3 67 1;
#X connect 51 0 70 1;
#X connect 51 1 69 1;
#X connect 51 2 71 1;
#X connect 51 3 46 1;
#X connect 52 0 70 0;
#X connect 53 0 79 0;
#X connect 54 0 55 1;
#X connect 55 0 38 1;
#X connect 57 0 68 0;
#X connect 58 0 49 0;
#X connect 58 1 57 0;
#X connect 58 2 59 0;
#X connect 59 0 44 0;
#X connect 60 0 61 0;
#X connect 60 1 52 0;
#X connect 60 2 46 0;
#X connect 60 3 47 0;
#X connect 61 0 64 0;
#X connect 61 1 63 0;
#X connect 62 0 64 1;
#X connect 64 0 71 0;
#X connect 65 0 8 0;
#X connect 66 0 22 0;
#X connect 68 0 43 0;
#X connect 73 0 76 0;
#X connect 73 1 75 0;
#X connect 74 0 76 1;
#X connect 76 0 72 0;
#X connect 77 0 73 0;
#X connect 77 1 53 0;
#X connect 77 2 49 0;
#X connect 77 3 82 0;
#X connect 77 4 58 0;
#X connect 78 0 87 0;
#X connect 78 1 39 1;
#X connect 80 0 81 1;
#X connect 81 0 24 0;
#X connect 82 0 83 0;
#X connect 82 1 44 0;
#X connect 83 0 43 0;
#X connect 83 1 67 0;
#X connect 84 0 43 0;
#X connect 84 1 69 0;
#X connect 85 0 18 0;
#X connect 86 0 41 1;
#X connect 87 0 39 0;
#X restore 260 381 pd NoteOn;
#X text 447 466 @hv_arg \$1 NumVoices int 1 false;
#X text 447 486 @hv_arg \$2 VoiceStealing int 0 false;
#X connect 1 0 10 1;
#X connect 5 0 15 0;
#X connect 6 0 31 0;
#X connect 8 0 7 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 1 0;
#X connect 11 0 2 0;
#X connect 15 0 6 0;
#X connect 15 1 17 0;
#X connect 17 0 16 0;
#X connect 18 0 11 1;
#X connect 19 0 33 0;
#X connect 19 1 34 0;
#X connect 19 2 20 0;
#X connect 20 0 29 0;
#X connect 20 1 21 0;
#X connect 21 0 26 0;
#X connect 22 0 21 0;
#X connect 23 0 24 0;
#X connect 24 0 28 0;
#X connect 24 1 25 1;
#X connect 25 0 35 0;
#X connect 26 0 23 0;
#X connect 26 1 32 1;
#X connect 26 2 35 1;
#X connect 27 0 32 0;
#X connect 28 0 27 1;
#X connect 29 0 27 0;
#X connect 29 1 25 0;
#X connect 30 0 19 0;
#X connect 31 0 0 0;
#X connect 32 0 8 0;
#X connect 32 1 3 0;
#X connect 32 2 4 0;
#X connect 33 0 8 0;
#X connect 33 1 3 0;
#X connect 33 2 4 0;
#X connect 35 0 8 0;
#X connect 35 1 3 0;
#X connect 35 2 4 0;
