#N canvas 3 54 1351 686 10; #X obj 21 103 cnv 15 196 124 empty empty pushdelay~ 4 8 0 14 -233017 -66577 0; #N canvas 3 55 450 300 curve_abs 0; #X obj 127 51 inlet; #X obj 322 51 inlet; #X obj 408 51 inlet; #X obj 127 132 == 0; #X obj 254 132 == 1; #X obj 440 131 == 2; #X obj 127 168 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 254 167 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 440 168 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 94 233 spigot; #X obj 221 233 spigot; #X obj 407 233 spigot; #X obj 94 349 *; #X obj 407 305 abs; #X obj 221 349 *; #X obj 407 341 *; #X obj 221 472 outlet; #X obj 221 269 expr sqrt(1-(pow($f1-1 \, 2))); #X obj 407 269 expr sqrt(1-(pow($f1 \, 2)))-1; #X obj 322 87 s \$0-limit; #X obj 408 87 s \$0-variable; #X obj 28 205 r \$0-variable; #X obj 166 205 r \$0-variable; #X obj 347 205 r \$0-variable; #X obj 114 319 r \$0-limit; #X obj 241 319 r \$0-limit; #X obj 449 319 r \$0-limit; #X text 137 111 linear; #X text 259 112 convex; #X text 438 110 concave; #X connect 0 0 3 0; #X connect 0 0 4 0; #X connect 0 0 5 0; #X connect 1 0 19 0; #X connect 2 0 20 0; #X connect 3 0 6 0; #X connect 4 0 7 0; #X connect 5 0 8 0; #X connect 6 0 9 1; #X connect 7 0 10 1; #X connect 8 0 11 1; #X connect 9 0 12 0; #X connect 10 0 17 0; #X connect 11 0 18 0; #X connect 12 0 16 0; #X connect 13 0 15 0; #X connect 14 0 16 0; #X connect 15 0 16 0; #X connect 17 0 14 0; #X connect 18 0 13 0; #X connect 21 0 9 0; #X connect 22 0 10 0; #X connect 23 0 11 0; #X connect 24 0 12 1; #X connect 25 0 14 1; #X connect 26 0 15 1; #X restore 169 70 pd curve_abs; #X obj 25 169 hradio 15 1 0 3 \$0-curve empty curve(ln|cnvex|cncave) 0 -8 0 10 -262144 -1 -1 0; #X obj 169 23 r \$0-curve; #X obj 442 562 outlet~; #X obj 573 127 *~; #X obj 597 65 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 493 71 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 494 40 == 0; #X obj 597 40 == 1; #X obj 491 123 line~; #X obj 491 97 pack 1 50; #X obj 608 111 line~; #X obj 607 89 pack 1 50; #X obj 612 151 s~ \$0-bypassedSignal; #X obj 479 535 r~ \$0-bypassedSignal; #X obj 544 25 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 27 15 loadbang; #X msg 75 49 0; #X obj 445 6 inlet~; #X obj 198 121 vsl 15 90 0 1 0 0 \$0-c \$0-rc gn 0 -9 0 10 -262144 -1 -1 6450 1; #X obj 169 121 vsl 15 90 0 1 0 0 \$0-b \$0-rb fb 0 -9 0 10 -191407 -262144 -1 58 1; #X obj 88 131 tgl 15 0 \$0-by empty by 19 8 0 10 -262144 -1 -1 0 1 ; #X obj 979 227 loadbang; #X obj 837 154 inlet modulation-add; #X obj 965 154 inlet modulation-multiply; #X obj 759 154 r \$0-values; #X obj 838 174 list prepend add; #X obj 966 175 list prepend mul; #N canvas 47 74 1072 591 modulate.oOo..oOo..oOo.. 0; #X obj 101 271 +; #X obj 101 250 t b f; #X obj 82 82 route 0 1 2 3 4 5 6 7; #X obj 244 216 route 0 1 2 3 4 5 6 7; #X obj 138 271 +; #X obj 138 250 t b f; #X obj 175 271 +; #X obj 175 250 t b f; #X obj 212 271 +; #X obj 212 250 t b f; #X obj 248 271 +; #X obj 248 250 t b f; #X obj 286 271 +; #X obj 286 250 t b f; #X obj 323 271 +; #X obj 323 250 t b f; #X obj 360 271 +; #X obj 360 250 t b f; #X obj 61 8 inlet; #X obj 99 490 outlet; #X obj 155 486 outlet; #X obj 208 489 outlet; #X obj 264 489 outlet; #X obj 318 486 outlet; #X obj 370 486 outlet; #X obj 425 485 outlet; #X obj 492 484 outlet; #X obj 78 409 clip 0 1; #X obj 132 411 clip 0 1; #X obj 186 412 clip 0 1; #X obj 240 414 clip 0 1; #X obj 294 416 clip 0 1; #X obj 348 418 clip 0 1; #X obj 402 419 clip 0 1; #X obj 456 421 clip 0 1; #X obj 418 177 route add mul; #X obj 117 332 t b f; #X obj 156 335 t b f; #X obj 193 335 t b f; #X obj 230 335 t b f; #X obj 266 335 t b f; #X obj 304 335 t b f; #X obj 341 335 t b f; #X obj 378 335 t b f; #X obj 118 356 * 1; #X obj 156 356 * 1; #X obj 193 356 * 1; #X obj 231 355 * 1; #X obj 266 356 * 1; #X obj 304 356 * 1; #X obj 341 356 * 1; #X obj 378 356 * 1; #X obj 397 275 route 0 1 2 3 4 5 6 7; #X obj 550 262 +; #X obj 550 241 t b f; #X obj 587 262 +; #X obj 587 241 t b f; #X obj 624 262 +; #X obj 624 241 t b f; #X obj 661 262 +; #X obj 661 241 t b f; #X obj 697 262 +; #X obj 697 241 t b f; #X obj 735 262 +; #X obj 735 241 t b f; #X obj 772 262 +; #X obj 772 241 t b f; #X obj 809 262 +; #X obj 809 241 t b f; #X obj 548 481 outlet; #X obj 604 477 outlet; #X obj 657 480 outlet; #X obj 713 480 outlet; #X obj 767 477 outlet; #X obj 819 477 outlet; #X obj 874 476 outlet; #X obj 941 475 outlet; #X obj 527 400 clip 0 1; #X obj 581 402 clip 0 1; #X obj 635 403 clip 0 1; #X obj 689 405 clip 0 1; #X obj 743 407 clip 0 1; #X obj 797 409 clip 0 1; #X obj 851 410 clip 0 1; #X obj 905 412 clip 0 1; #X obj 867 168 route add mul; #X obj 566 323 t b f; #X obj 605 326 t b f; #X obj 642 326 t b f; #X obj 679 326 t b f; #X obj 715 326 t b f; #X obj 753 326 t b f; #X obj 790 326 t b f; #X obj 827 326 t b f; #X obj 567 347 * 1; #X obj 605 347 * 1; #X obj 642 347 * 1; #X obj 680 346 * 1; #X obj 715 347 * 1; #X obj 753 347 * 1; #X obj 790 347 * 1; #X obj 827 347 * 1; #X obj 693 206 route 8 9 10 11 12 13 14 5; #X obj 846 266 route 8 9 10 11 12 13 14 15; #X msg 79 110 \$1 20; #X msg 92 130 \$1 20; #X msg 120 111 \$1 20; #X msg 133 131 \$1 20; #X msg 161 110 \$1 20; #X msg 174 130 \$1 20; #X msg 202 111 \$1 20; #X msg 215 131 \$1 20; #X obj 92 171 line 0 1; #X obj 109 194 line 0 1; #X obj 149 166 line 0 1; #X obj 166 189 line 0 1; #X obj 207 163 line 0 1; #X obj 224 186 line 0 1; #X obj 264 158 line 0 1; #X obj 281 181 line 0 1; #X msg 501 51 \$1 20; #X msg 514 71 \$1 20; #X msg 542 52 \$1 20; #X msg 555 72 \$1 20; #X msg 583 51 \$1 20; #X msg 596 71 \$1 20; #X msg 624 52 \$1 20; #X msg 637 72 \$1 20; #X obj 512 111 line 0 1; #X obj 571 107 line 0 1; #X obj 588 130 line 0 1; #X obj 629 104 line 0 1; #X obj 646 127 line 0 1; #X obj 686 99 line 0 1; #X obj 703 122 line 0 1; #X obj 504 22 route 8 9 10 11 12 13 14 15; #X obj 530 132 line 0 1; #X obj 845 94 list trim; #X obj 849 72 inlet; #X connect 0 0 44 0; #X connect 1 0 0 0; #X connect 1 1 0 1; #X connect 2 0 104 0; #X connect 2 1 105 0; #X connect 2 2 106 0; #X connect 2 3 107 0; #X connect 2 4 108 0; #X connect 2 5 109 0; #X connect 2 6 110 0; #X connect 2 7 111 0; #X connect 3 0 0 0; #X connect 3 1 4 0; #X connect 3 2 6 0; #X connect 3 3 8 0; #X connect 3 4 10 0; #X connect 3 5 12 0; #X connect 3 6 14 0; #X connect 3 7 16 0; #X connect 4 0 45 0; #X connect 5 0 4 0; #X connect 5 1 4 1; #X connect 6 0 46 0; #X connect 7 0 6 0; #X connect 7 1 6 1; #X connect 8 0 47 0; #X connect 9 0 8 0; #X connect 9 1 8 1; #X connect 10 0 48 0; #X connect 11 0 10 0; #X connect 11 1 10 1; #X connect 12 0 49 0; #X connect 13 0 12 0; #X connect 13 1 12 1; #X connect 14 0 50 0; #X connect 15 0 14 0; #X connect 15 1 14 1; #X connect 16 0 51 0; #X connect 17 0 16 0; #X connect 17 1 16 1; #X connect 18 0 2 0; #X connect 18 0 135 0; #X connect 27 0 19 0; #X connect 28 0 20 0; #X connect 29 0 21 0; #X connect 30 0 22 0; #X connect 31 0 23 0; #X connect 32 0 24 0; #X connect 33 0 25 0; #X connect 34 0 26 0; #X connect 35 0 3 0; #X connect 35 1 52 0; #X connect 36 0 44 0; #X connect 36 1 44 1; #X connect 37 0 45 0; #X connect 37 1 45 1; #X connect 38 0 46 0; #X connect 38 1 46 1; #X connect 39 0 47 0; #X connect 39 1 47 1; #X connect 40 0 48 0; #X connect 40 1 48 1; #X connect 41 0 49 0; #X connect 41 1 49 1; #X connect 42 0 50 0; #X connect 42 1 50 1; #X connect 43 0 51 0; #X connect 43 1 51 1; #X connect 44 0 27 0; #X connect 45 0 28 0; #X connect 46 0 29 0; #X connect 47 0 30 0; #X connect 48 0 31 0; #X connect 49 0 32 0; #X connect 50 0 33 0; #X connect 51 0 34 0; #X connect 52 0 36 0; #X connect 52 1 37 0; #X connect 52 2 38 0; #X connect 52 3 39 0; #X connect 52 4 40 0; #X connect 52 5 41 0; #X connect 52 6 42 0; #X connect 52 7 43 0; #X connect 53 0 94 0; #X connect 54 0 53 0; #X connect 54 1 53 1; #X connect 55 0 95 0; #X connect 56 0 55 0; #X connect 56 1 55 1; #X connect 57 0 96 0; #X connect 58 0 57 0; #X connect 58 1 57 1; #X connect 59 0 97 0; #X connect 60 0 59 0; #X connect 60 1 59 1; #X connect 61 0 98 0; #X connect 62 0 61 0; #X connect 62 1 61 1; #X connect 63 0 99 0; #X connect 64 0 63 0; #X connect 64 1 63 1; #X connect 65 0 100 0; #X connect 66 0 65 0; #X connect 66 1 65 1; #X connect 67 0 101 0; #X connect 68 0 67 0; #X connect 68 1 67 1; #X connect 77 0 69 0; #X connect 78 0 70 0; #X connect 79 0 71 0; #X connect 80 0 72 0; #X connect 81 0 73 0; #X connect 82 0 74 0; #X connect 83 0 75 0; #X connect 84 0 76 0; #X connect 85 0 102 0; #X connect 85 1 103 0; #X connect 86 0 94 0; #X connect 86 1 94 1; #X connect 87 0 95 0; #X connect 87 1 95 1; #X connect 88 0 96 0; #X connect 88 1 96 1; #X connect 89 0 97 0; #X connect 89 1 97 1; #X connect 90 0 98 0; #X connect 90 1 98 1; #X connect 91 0 99 0; #X connect 91 1 99 1; #X connect 92 0 100 0; #X connect 92 1 100 1; #X connect 93 0 101 0; #X connect 93 1 101 1; #X connect 94 0 77 0; #X connect 95 0 78 0; #X connect 96 0 79 0; #X connect 97 0 80 0; #X connect 98 0 81 0; #X connect 99 0 82 0; #X connect 100 0 83 0; #X connect 101 0 84 0; #X connect 102 0 53 0; #X connect 102 1 55 0; #X connect 102 2 57 0; #X connect 102 3 59 0; #X connect 102 4 61 0; #X connect 102 5 63 0; #X connect 102 6 65 0; #X connect 102 7 67 0; #X connect 103 0 86 0; #X connect 103 1 87 0; #X connect 103 2 88 0; #X connect 103 3 89 0; #X connect 103 4 90 0; #X connect 103 5 91 0; #X connect 103 6 92 0; #X connect 103 7 93 0; #X connect 104 0 112 0; #X connect 105 0 113 0; #X connect 106 0 114 0; #X connect 107 0 115 0; #X connect 108 0 116 0; #X connect 109 0 117 0; #X connect 110 0 118 0; #X connect 111 0 119 0; #X connect 112 0 1 0; #X connect 113 0 5 0; #X connect 114 0 7 0; #X connect 115 0 9 0; #X connect 116 0 11 0; #X connect 117 0 13 0; #X connect 118 0 15 0; #X connect 119 0 17 0; #X connect 120 0 128 0; #X connect 121 0 136 0; #X connect 122 0 129 0; #X connect 123 0 130 0; #X connect 124 0 131 0; #X connect 125 0 132 0; #X connect 126 0 133 0; #X connect 127 0 134 0; #X connect 128 0 54 0; #X connect 129 0 58 0; #X connect 130 0 60 0; #X connect 131 0 62 0; #X connect 132 0 64 0; #X connect 133 0 66 0; #X connect 134 0 68 0; #X connect 135 0 120 0; #X connect 135 1 121 0; #X connect 135 2 122 0; #X connect 135 3 123 0; #X connect 135 4 124 0; #X connect 135 5 125 0; #X connect 135 6 126 0; #X connect 135 7 127 0; #X connect 136 0 56 0; #X connect 137 0 35 0; #X connect 137 0 85 0; #X connect 138 0 137 0; #X restore 761 214 pd modulate.oOo..oOo..oOo..; #X obj 761 239 s \$0-delay; #X obj 829 241 s \$0-feedback; #X obj 913 238 s \$0-gain; #X msg 780 267 delay feedback gain; #X obj 27 255 hsl 60 10 0 1 0 0 \$0-a \$0-ra delay -2 -7 0 10 -262144 -262144 -1 59 1; #N canvas 361 55 833 682 list-functions 0; #N canvas 0 50 462 312 list-enumerate 0; #X obj 107 63 t a b; #N canvas 473 338 454 304 count 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 147 133 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 96 b; #X obj 178 61 inlet; #X obj 178 98 b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 5 0; #X connect 5 0 0 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X restore 186 155 pd count; #X obj 107 113 t a b; #X obj 107 33 inlet; #X obj 107 181 list prepend; #X obj 107 209 outlet; #X obj 165 209 outlet; #N canvas 0 50 537 411 drip 0; #X obj 64 206 list split 1; #X obj 64 123 until; #X obj 64 181 list append; #X obj 194 206 bang; #X text 146 90 First store list \, then start the loop; #X text 163 118 "until" bangs its output until told to stop by a "bang" to its right inlet.; #X text 182 160 Store the remaining list.; #X text 239 205 third outlet of "split" tells us to stop.; #X obj 64 243 outlet; #X obj 64 57 inlet; #X text 237 44 From list-help.pd; #X obj 143 243 outlet; #X obj 64 86 t b a; #X connect 0 0 8 0; #X connect 0 1 2 1; #X connect 0 2 3 0; #X connect 0 2 11 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 1 1; #X connect 9 0 12 0; #X connect 12 0 1 0; #X connect 12 1 2 1; #X restore 110 88 pd drip; #X obj 76 154 list prepend label; #X connect 0 0 7 0; #X connect 0 1 1 1; #X connect 1 0 4 1; #X connect 2 0 8 0; #X connect 2 1 1 0; #X connect 3 0 0 0; #X connect 4 0 5 0; #X connect 7 0 2 0; #X connect 7 1 6 0; #X connect 8 0 4 0; #X restore 37 184 pd list-enumerate; #X obj 37 230 s \$0-controls; #N canvas 0 50 482 332 list-enumerate 0; #N canvas 473 338 458 308 count 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 147 133 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 96 b; #X obj 178 61 inlet; #X obj 178 98 b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 5 0; #X connect 5 0 0 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X restore 186 155 pd count; #X obj 107 113 t a b; #X obj 107 33 inlet; #X obj 107 181 list prepend; #X obj 112 253 outlet; #N canvas 0 50 541 415 drip 0; #X obj 64 206 list split 1; #X obj 64 123 until; #X obj 64 181 list append; #X obj 194 206 bang; #X text 146 90 First store list \, then start the loop; #X text 163 118 "until" bangs its output until told to stop by a "bang" to its right inlet.; #X text 182 160 Store the remaining list.; #X text 239 205 third outlet of "split" tells us to stop.; #X obj 64 243 outlet; #X obj 64 57 inlet; #X text 237 44 From list-help.pd; #X obj 143 243 outlet; #X obj 64 86 t b a; #X connect 0 0 8 0; #X connect 0 1 2 1; #X connect 0 2 3 0; #X connect 0 2 11 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 1 1; #X connect 9 0 12 0; #X connect 12 0 1 0; #X connect 12 1 2 1; #X restore 110 88 pd drip; #X obj 107 63 t a b; #X connect 0 0 3 1; #X connect 1 0 3 0; #X connect 1 1 0 0; #X connect 2 0 6 0; #X connect 3 0 4 0; #X connect 5 0 1 0; #X connect 6 0 5 0; #X connect 6 1 0 1; #X restore 149 183 pd list-enumerate; #N canvas 0 50 498 348 list-enumerate 0; #N canvas 473 338 458 308 count 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 147 133 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 96 b; #X obj 178 61 inlet; #X obj 178 98 b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 5 0; #X connect 5 0 0 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X restore 186 155 pd count; #X obj 107 113 t a b; #X obj 107 33 inlet; #X obj 107 181 list prepend; #X obj 112 253 outlet; #N canvas 0 50 541 415 drip 0; #X obj 64 206 list split 1; #X obj 64 123 until; #X obj 64 181 list append; #X obj 194 206 bang; #X text 146 90 First store list \, then start the loop; #X text 163 118 "until" bangs its output until told to stop by a "bang" to its right inlet.; #X text 182 160 Store the remaining list.; #X text 239 205 third outlet of "split" tells us to stop.; #X obj 64 243 outlet; #X obj 64 57 inlet; #X text 237 44 From list-help.pd; #X obj 143 243 outlet; #X obj 64 86 t b a; #X connect 0 0 8 0; #X connect 0 1 2 1; #X connect 0 2 3 0; #X connect 0 2 11 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 1 1; #X connect 9 0 12 0; #X connect 12 0 1 0; #X connect 12 1 2 1; #X restore 110 88 pd drip; #X obj 194 215 t a; #X obj 106 209 list prepend; #X obj 107 63 t a b b; #X connect 0 0 3 1; #X connect 1 0 3 0; #X connect 1 1 0 0; #X connect 2 0 8 0; #X connect 3 0 7 0; #X connect 5 0 1 0; #X connect 6 0 7 1; #X connect 7 0 6 0; #X connect 7 0 4 0; #X connect 8 0 5 0; #X connect 8 1 0 1; #X connect 8 2 7 1; #X restore 411 149 pd list-enumerate; #X obj 104 251 r \$0-controls; #X obj 272 98 r \$0-values; #N canvas 283 65 551 703 replacelist 0; #X obj 164 224 list; #X obj 327 98 inlet; #X obj 250 98 inlet; #X text 331 72 orig; #X text 256 74 pos; #X text 77 70 list to insert; #X obj 85 94 inlet; #X obj 207 281 list split; #X obj 85 526 list; #X obj 85 598 outlet; #X obj 85 317 list prepend; #X obj 85 120 t a b a b; #X obj 85 430 list prepend 0; #X obj 250 125 t f f; #X obj 207 524 list prepend; #X obj 85 469 route 0 1; #X obj 316 347 f; #X obj 286 282 t a b; #X obj 316 377 > 0; #X obj 122 358 r \$0-init; #X obj 122 377 0; #X obj 300 524 r \$0-init; #X obj 176 317 r \$0-init; #X obj 118 527 r \$0-init; #X obj 159 131 s \$0-init; #X text 47 25 list-replace: Replace the list starting at position POS with a new list \, overwriting the old elements.; #N canvas 0 50 458 308 length 0; #X obj 171 164 + 1; #X obj 92 127 b; #X obj 126 204 f; #X obj 158 138 1; #X obj 142 166 f 1; #X obj 216 168 0; #X obj 136 59 t a b b; #N canvas 0 50 537 411 drip 0; #X obj 64 206 list split 1; #X obj 64 123 until; #X obj 64 181 list append; #X obj 194 206 bang; #X text 146 90 First store list \, then start the loop; #X text 163 118 "until" bangs its output until told to stop by a "bang" to its right inlet.; #X text 182 160 Store the remaining list.; #X text 239 205 third outlet of "split" tells us to stop.; #X obj 64 243 outlet; #X obj 64 57 inlet; #X text 237 44 From list-help.pd; #X obj 143 243 outlet; #X obj 64 86 t b a; #X connect 0 0 8 0; #X connect 0 1 2 1; #X connect 0 2 3 0; #X connect 0 2 11 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 1 1; #X connect 9 0 12 0; #X connect 12 0 1 0; #X connect 12 1 2 1; #X restore 92 104 pd drip; #X obj 137 36 inlet; #X obj 125 238 outlet; #X connect 0 0 4 1; #X connect 1 0 4 0; #X connect 2 0 9 0; #X connect 3 0 4 1; #X connect 4 0 0 0; #X connect 4 0 2 1; #X connect 5 0 2 1; #X connect 6 0 7 0; #X connect 6 1 3 0; #X connect 6 2 5 0; #X connect 7 0 1 0; #X connect 7 1 2 0; #X connect 8 0 6 0; #X restore 268 216 pd length; #X obj 162 254 list split; #X connect 0 0 27 0; #X connect 1 0 0 1; #X connect 2 0 13 0; #X connect 6 0 11 0; #X connect 7 1 8 1; #X connect 7 1 14 1; #X connect 8 0 9 0; #X connect 10 0 12 0; #X connect 11 0 10 0; #X connect 11 1 0 0; #X connect 11 2 26 0; #X connect 11 3 24 0; #X connect 12 0 15 0; #X connect 13 0 27 1; #X connect 13 1 16 1; #X connect 14 0 9 0; #X connect 15 0 8 0; #X connect 15 1 14 0; #X connect 16 0 18 0; #X connect 17 0 14 1; #X connect 17 0 8 1; #X connect 17 1 16 0; #X connect 18 0 12 1; #X connect 19 0 20 0; #X connect 20 0 12 1; #X connect 21 0 14 1; #X connect 22 0 10 1; #X connect 23 0 8 1; #X connect 26 0 7 1; #X connect 27 0 10 1; #X connect 27 1 7 0; #X connect 27 2 17 0; #X restore 289 199 pd replacelist; #X obj 423 265 t a; #X obj 272 130 swap; #X obj 50 109 inlet; #N canvas 0 50 545 419 drip2 0; #X obj 64 123 until; #X obj 64 181 list append; #X obj 194 206 bang; #X text 146 90 First store list \, then start the loop; #X text 163 118 "until" bangs its output until told to stop by a "bang" to its right inlet.; #X text 182 160 Store the remaining list.; #X text 239 205 third outlet of "split" tells us to stop.; #X obj 64 243 outlet; #X obj 64 57 inlet; #X text 237 44 From list-help.pd; #X obj 143 243 outlet; #X obj 64 86 t b a; #X obj 64 206 list split 2; #X connect 0 0 1 0; #X connect 1 0 12 0; #X connect 2 0 0 1; #X connect 8 0 11 0; #X connect 11 0 0 0; #X connect 11 1 1 1; #X connect 12 0 7 0; #X connect 12 1 1 1; #X connect 12 2 2 0; #X connect 12 2 10 0; #X restore 190 285 pd drip2; #X obj 253 24 inlet; #X obj 144 355 route 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; #X obj 144 381 s \$0-ra; #X obj 156 401 s \$0-rb; #X obj 167 422 s \$0-rc; #X obj 179 442 s \$0-rd; #X obj 194 381 s \$0-re; #X obj 206 401 s \$0-rf; #X obj 217 422 s \$0-rg; #X obj 229 442 s \$0-rh; #X obj 250 383 s \$0-ri; #X obj 262 403 s \$0-rj; #X obj 273 424 s \$0-rk; #X obj 285 444 s \$0-rl; #X obj 299 383 s \$0-rm; #X obj 312 403 s \$0-rn; #X obj 323 424 s \$0-ro; #X obj 335 444 s \$0-rp; #X obj 35 505 r \$0-a; #X msg 35 530 0 \$1; #X obj 78 505 r \$0-b; #X msg 77 529 1 \$1; #X obj 121 505 r \$0-c; #X obj 164 505 r \$0-d; #X msg 121 530 2 \$1; #X msg 163 529 3 \$1; #X obj 208 503 r \$0-e; #X obj 251 503 r \$0-f; #X obj 294 503 r \$0-g; #X obj 337 503 r \$0-h; #X msg 208 528 4 \$1; #X msg 250 526 5 \$1; #X msg 294 527 6 \$1; #X msg 336 527 7 \$1; #X obj 383 503 r \$0-i; #X obj 426 502 r \$0-j; #X obj 468 503 r \$0-k; #X obj 512 503 r \$0-l; #X obj 556 501 r \$0-m; #X obj 599 501 r \$0-o; #X obj 642 501 r \$0-p; #X obj 685 501 r \$0-q; #X msg 383 528 8 \$1; #X msg 425 527 9 \$1; #X msg 469 528 10 \$1; #X msg 511 527 11 \$1; #X msg 556 526 12 \$1; #X msg 598 524 13 \$1; #X msg 641 525 14 \$1; #X msg 684 525 15 \$1; #X obj 683 559 s \$0-values; #X obj 413 202 t a a; #X obj 412 182 list; #X obj 257 47 t a b a; #X obj 294 150 * 2; #X obj 295 170 + 1; #X obj 191 253 t a a; #N canvas 3 54 450 300 808_state 0; #X obj 153 54 inlet; #X obj 154 463 outlet; #X obj 153 395 list; #X obj 336 190 r SSSAD; #X obj 295 130 inlet; #X obj 56 308 r SSSAD_ADMIN; #X obj 56 356 b; #X obj 56 334 route set; #X obj 153 81 b; #X obj 222 231 s SSSAD_ADMIN; #X obj 222 201 list; #X obj 216 44 r SSSAD_ADMIN; #X obj 219 91 t b; #X obj 218 68 route save; #X obj 295 152 list prepend persist \$1; #X obj 336 216 route \$1; #X obj 153 425 route bang; #X obj 336 240 t a a; #X connect 0 0 8 0; #X connect 2 0 16 0; #X connect 3 0 15 0; #X connect 4 0 14 0; #X connect 5 0 7 0; #X connect 6 0 2 0; #X connect 7 0 6 0; #X connect 8 0 2 0; #X connect 10 0 9 0; #X connect 11 0 13 0; #X connect 12 0 10 0; #X connect 13 0 12 0; #X connect 14 0 10 1; #X connect 15 0 17 0; #X connect 16 1 1 0; #X connect 17 0 10 1; #X connect 17 1 2 1; #X restore 190 228 pd 808_state \$1/controls; #X connect 0 0 1 0; #X connect 2 0 1 0; #X connect 3 0 63 1; #X connect 4 0 12 0; #X connect 5 0 8 0; #X connect 6 0 7 0; #X connect 6 0 68 1; #X connect 7 0 6 2; #X connect 8 0 6 0; #X connect 8 1 65 0; #X connect 9 0 0 0; #X connect 10 0 12 0; #X connect 11 0 64 0; #X connect 12 0 13 0; #X connect 12 1 14 0; #X connect 12 2 15 0; #X connect 12 3 16 0; #X connect 12 4 17 0; #X connect 12 5 18 0; #X connect 12 6 19 0; #X connect 12 7 20 0; #X connect 12 8 21 0; #X connect 12 9 22 0; #X connect 12 10 23 0; #X connect 12 11 24 0; #X connect 12 12 25 0; #X connect 12 13 26 0; #X connect 12 14 27 0; #X connect 12 15 28 0; #X connect 29 0 30 0; #X connect 30 0 61 0; #X connect 31 0 32 0; #X connect 32 0 61 0; #X connect 33 0 35 0; #X connect 34 0 36 0; #X connect 35 0 61 0; #X connect 36 0 61 0; #X connect 37 0 41 0; #X connect 38 0 42 0; #X connect 39 0 43 0; #X connect 40 0 44 0; #X connect 41 0 61 0; #X connect 42 0 61 0; #X connect 43 0 61 0; #X connect 44 0 61 0; #X connect 45 0 53 0; #X connect 46 0 54 0; #X connect 47 0 55 0; #X connect 48 0 56 0; #X connect 49 0 57 0; #X connect 50 0 58 0; #X connect 51 0 59 0; #X connect 52 0 60 0; #X connect 53 0 61 0; #X connect 54 0 61 0; #X connect 55 0 61 0; #X connect 56 0 61 0; #X connect 57 0 61 0; #X connect 58 0 61 0; #X connect 59 0 61 0; #X connect 60 0 61 0; #X connect 62 0 6 2; #X connect 62 1 68 1; #X connect 63 0 62 0; #X connect 64 0 2 0; #X connect 64 1 63 0; #X connect 64 2 3 0; #X connect 65 0 66 0; #X connect 66 0 6 1; #X connect 67 0 10 0; #X connect 67 1 6 2; #X connect 68 0 67 0; #X restore 843 325 pd list-functions; #X obj 1015 289 s \$0-loadbang; #X obj 624 433 r \$0-gain; #N canvas 0 50 462 312 rh_scalelog 0; #X obj 20 155 exp; #X obj 20 107 *; #X obj 20 130 +; #X obj 98 87 log; #X obj 194 84 log; #X obj 123 123 t b f; #X obj 123 145 -; #X obj 20 183 outlet; #X obj 20 19 inlet; #X obj 98 23 inlet; #X obj 194 24 inlet; #X connect 0 0 7 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 2 1; #X connect 3 0 5 0; #X connect 4 0 6 0; #X connect 5 0 6 0; #X connect 5 1 6 1; #X connect 6 0 1 1; #X connect 8 0 1 0; #X connect 9 0 3 0; #X connect 10 0 4 0; #X restore 625 486 pd rh_scalelog; #X msg 687 465 0.1; #X msg 733 465 10; #X obj 481 507 delwrite~ \$0-fbbb 1000; #X obj 487 485 *~; #X obj 516 454 r \$0-feedback; #X obj 517 475 * 0.95; #X obj 443 535 *~ 1; #X obj 485 429 vd~ \$0-fbbb 100; #X msg 542 379 \$1 20; #X obj 542 401 line~; #X obj 687 437 r \$0-loadbang; #X obj 444 216 *~; #X obj 229 233 env~; #X obj 229 273 dbtorms; #X obj 229 299 spigot; #X obj 304 284 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 229 390 max; #X obj 229 453 v Curmax; #X obj 244 324 t b; #X obj 244 352 v Curmax; #X msg 305 363 0; #X obj 304 312 sel 0 1; #X msg 204 46 1; #X obj 334 365 s \$0-UpdateDel; #X obj 230 145 v Curmax; #X obj 230 95 r \$0-UpdateDel; #X obj 543 1 r \$0-by; #X obj 25 132 tgl 15 0 empty empty off|on 17 7 0 10 -262144 -1 -1 1 1; #X obj 27 200 hsl 128 15 0 1 0 0 empty \$0-updateddel delay -2 -8 0 10 -191407 -262144 -1 127 1; #X obj 304 226 metro; #X obj 304 127 tgl 15 0 empty empty off|on 17 7 0 10 -262144 -1 -1 1 1; #X obj 359 115 r \$0-curdelms; #X msg 27 51 0.5; #X obj 981 248 t b b; #X msg 928 285 0.5 0.5 0.5; #X msg 129 50 1; #X obj 305 337 t b b; #X obj 334 203 line; #X msg 337 178 \$1 20; #X msg 610 205 1; #X obj 542 277 * 990; #X obj 542 299 + 10; #X obj 541 204 r \$0-curve; #X obj 610 184 loadbang; #N canvas 0 54 1366 686 curve_abs 0; #X obj 127 51 inlet; #X obj 322 51 inlet; #X obj 408 51 inlet; #X obj 127 132 == 0; #X obj 254 132 == 1; #X obj 440 131 == 2; #X obj 127 168 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 254 167 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 440 168 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 94 233 spigot; #X obj 221 233 spigot; #X obj 407 233 spigot; #X obj 94 349 *; #X obj 407 305 abs; #X obj 221 349 *; #X obj 407 341 *; #X obj 221 472 outlet; #X obj 221 269 expr sqrt(1-(pow($f1-1 \, 2))); #X obj 407 269 expr sqrt(1-(pow($f1 \, 2)))-1; #X obj 322 87 s \$0-limit; #X obj 408 87 s \$0-variable; #X obj 28 205 r \$0-variable; #X obj 166 205 r \$0-variable; #X obj 347 205 r \$0-variable; #X obj 114 319 r \$0-limit; #X obj 241 319 r \$0-limit; #X obj 449 319 r \$0-limit; #X text 137 111 linear; #X text 259 112 convex; #X text 438 110 concave; #X connect 0 0 3 0; #X connect 0 0 4 0; #X connect 0 0 5 0; #X connect 1 0 19 0; #X connect 2 0 20 0; #X connect 3 0 6 0; #X connect 4 0 7 0; #X connect 5 0 8 0; #X connect 6 0 9 1; #X connect 7 0 10 1; #X connect 8 0 11 1; #X connect 9 0 12 0; #X connect 10 0 17 0; #X connect 11 0 18 0; #X connect 12 0 16 0; #X connect 13 0 15 0; #X connect 14 0 16 0; #X connect 15 0 16 0; #X connect 17 0 14 0; #X connect 18 0 13 0; #X connect 21 0 9 0; #X connect 22 0 10 0; #X connect 23 0 11 0; #X connect 24 0 12 1; #X connect 25 0 14 1; #X connect 26 0 15 1; #X restore 542 255 pd curve_abs; #X obj 667 182 r \$0-delay; #X obj 667 237 v \$0-curdel; #X obj 598 361 s \$0-curdelms; #X obj 240 23 r \$0-delay; #X obj 82 170 tgl 15 0 \$0-cont empty inter/cont 17 7 0 10 -262144 -1 -1 0 1; #X obj 598 335 spigot; #X obj 632 267 r \$0-cont; #X obj 631 291 - 1; #X obj 631 313 abs; #X floatatom 226 428 5 0 0 0 - - -, f 5; #X obj 232 126 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X floatatom 359 145 5 0 0 0 - - -, f 5; #X floatatom 667 210 5 0 0 0 - - -, f 5; #X connect 1 0 21 0; #X connect 3 0 1 0; #X connect 5 0 14 0; #X connect 6 0 13 0; #X connect 7 0 11 0; #X connect 8 0 7 0; #X connect 9 0 6 0; #X connect 10 0 50 1; #X connect 11 0 10 0; #X connect 12 0 5 1; #X connect 13 0 12 0; #X connect 15 0 4 0; #X connect 16 0 8 0; #X connect 16 0 9 0; #X connect 17 0 18 0; #X connect 17 0 61 0; #X connect 17 0 71 0; #X connect 17 0 74 0; #X connect 18 0 2 0; #X connect 18 0 22 0; #X connect 18 0 88 0; #X connect 19 0 50 0; #X connect 19 0 5 0; #X connect 23 0 72 0; #X connect 24 0 27 0; #X connect 25 0 28 0; #X connect 26 0 29 0; #X connect 27 0 29 1; #X connect 28 0 29 1; #X connect 29 0 30 0; #X connect 29 1 31 0; #X connect 29 2 32 0; #X connect 33 0 35 0; #X connect 37 0 38 0; #X connect 38 0 45 1; #X connect 39 0 38 1; #X connect 40 0 38 2; #X connect 42 0 41 0; #X connect 43 0 44 0; #X connect 44 0 42 1; #X connect 45 0 4 0; #X connect 46 0 42 0; #X connect 46 0 45 0; #X connect 47 0 48 0; #X connect 48 0 46 0; #X connect 49 0 39 0; #X connect 49 0 40 0; #X connect 50 0 41 0; #X connect 50 0 45 0; #X connect 50 0 51 0; #X connect 51 0 52 0; #X connect 52 0 53 0; #X connect 53 0 55 0; #X connect 54 0 53 1; #X connect 54 0 60 0; #X connect 55 0 93 0; #X connect 57 0 58 0; #X connect 58 0 55 1; #X connect 59 0 93 0; #X connect 60 0 75 0; #X connect 61 0 1 1; #X connect 63 0 67 0; #X connect 64 0 94 0; #X connect 65 0 16 0; #X connect 66 0 69 0; #X connect 67 0 34 0; #X connect 68 0 54 0; #X connect 69 0 68 0; #X connect 70 0 95 0; #X connect 71 0 20 0; #X connect 71 0 21 0; #X connect 71 0 67 0; #X connect 72 0 73 0; #X connect 72 1 36 0; #X connect 73 0 35 1; #X connect 74 0 66 0; #X connect 75 0 59 0; #X connect 75 1 62 0; #X connect 76 0 68 1; #X connect 77 0 76 0; #X connect 78 0 83 1; #X connect 79 0 80 0; #X connect 80 0 89 0; #X connect 80 0 47 0; #X connect 81 0 83 0; #X connect 82 0 78 0; #X connect 83 0 79 0; #X connect 84 0 96 0; #X connect 87 0 1 2; #X connect 89 0 86 0; #X connect 90 0 91 0; #X connect 91 0 92 0; #X connect 92 0 89 1; #X connect 93 0 56 0; #X connect 93 0 57 0; #X connect 94 0 63 0; #X connect 95 0 77 0; #X connect 96 0 85 0; #X connect 96 0 83 2; #X coords 0 -1 1 1 200 130 1 20 100;