aboutsummaryrefslogtreecommitdiff
path: root/tof/sample_play~.pd
diff options
context:
space:
mode:
Diffstat (limited to 'tof/sample_play~.pd')
-rw-r--r--tof/sample_play~.pd610
1 files changed, 479 insertions, 131 deletions
diff --git a/tof/sample_play~.pd b/tof/sample_play~.pd
index e427175..291bc98 100644
--- a/tof/sample_play~.pd
+++ b/tof/sample_play~.pd
@@ -1,30 +1,31 @@
-#N canvas 135 24 729 684 10;
+#N canvas 807 227 873 718 10;
#X obj 29 -23 inlet;
-#X obj 71 321 *~ 0;
-#X obj 260 598 outlet~;
-#X obj 51 502 tabread4~;
-#X obj 417 602 outlet~;
-#X obj 219 512 tabread4~;
-#X obj 223 565 *~;
-#X obj 343 556 *~;
-#X obj 132 401 +~ 0;
-#X obj 41 46 route bang float;
#X obj 231 -20 inlet pitch;
-#N canvas 0 0 892 551 player 0;
-#X obj 702 496 outlet get_sample;
+#X obj 121 625 outlet~ left;
+#X obj 283 628 outlet~ right;
+#X obj 428 623 outlet~ progress;
+#X obj 578 624 outlet done;
+#X obj 46 247 zexy/demultiplex;
+#N canvas 410 272 871 601 voice 0;
+#X obj 123 203 *~ 0;
+#X obj 106 373 tabread4~;
+#X obj 274 383 tabread4~;
+#X obj 101 434 *~;
+#X obj 221 425 *~;
+#X obj 124 258 +~ 0;
+#N canvas 326 193 914 687 player 0;
#X obj 91 29 inlet bang;
#X obj 253 38 inlet float;
#X obj 388 34 inlet pitch;
-#X obj 85 501 outlet~ phase;
+#X obj 87 655 outlet~ phase;
#X msg 172 265 0;
#X obj 80 318 tof/phasorshot~;
-#X obj 75 249 sig~ 1;
#X msg 310 229 1;
#X msg 267 232 0;
-#X msg 501 440 1;
-#X msg 437 434 0;
+#X msg 528 383 1;
+#X msg 358 362 0;
#X obj 350 144 sel 0;
-#N canvas 0 0 450 300 start_phase 0;
+#N canvas 0 22 450 300 start_phase 0;
#X obj 76 249 outlet;
#X obj 244 26 inlet speed;
#X obj 68 28 inlet bang;
@@ -35,60 +36,196 @@
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X restore 132 200 pd start_phase;
-#X obj 271 365 spigot;
-#X obj 377 395 t b b;
-#X msg 380 430 0;
+#X obj 236 380 spigot;
#X obj 283 310 == 0;
#X obj 254 266 t f f;
-#X obj 94 107 t b b b;
-#X obj 378 178 t b b b;
-#X obj 519 292 t b b;
#X obj 561 38 inlet speed;
-#X obj 416 516 line~;
-#X msg 416 490 \$1 5;
-#X obj 555 510 outlet~ output;
-#X connect 1 0 19 0;
-#X connect 2 0 12 0;
-#X connect 3 0 13 1;
-#X connect 5 0 6 1;
-#X connect 6 0 4 0;
-#X connect 6 1 14 0;
-#X connect 6 2 14 0;
-#X connect 7 0 6 0;
-#X connect 8 0 18 0;
-#X connect 9 0 18 0;
-#X connect 10 0 24 0;
-#X connect 11 0 24 0;
-#X connect 12 0 11 0;
-#X connect 12 1 20 0;
-#X connect 13 0 6 1;
-#X connect 14 0 15 0;
-#X connect 15 0 16 0;
-#X connect 15 1 11 0;
-#X connect 16 0 14 1;
-#X connect 16 0 24 0;
-#X connect 17 0 14 1;
-#X connect 18 0 6 2;
-#X connect 18 1 17 0;
-#X connect 19 0 13 0;
-#X connect 19 1 9 0;
-#X connect 19 2 21 0;
-#X connect 20 0 5 0;
-#X connect 20 1 8 0;
-#X connect 20 2 21 0;
-#X connect 21 0 10 0;
-#X connect 21 1 0 0;
-#X connect 22 0 7 0;
-#X connect 23 0 25 0;
-#X connect 24 0 23 0;
-#X restore 70 220 pd player;
-#N canvas 0 0 842 452 parse_sample 0;
-#X obj 392 336 outlet end;
-#X obj 493 335 outlet start;
-#X obj 600 336 outlet length;
-#X obj 265 336 outlet tables;
-#X obj 127 338 outlet base_freq;
-#N canvas 0 0 450 300 find_freq 0;
+#X obj 294 587 line~;
+#X msg 295 561 \$1 5;
+#X obj 315 662 outlet~ volume;
+#X obj 667 661 outlet done;
+#X obj 363 600 cyclone/trapezoid~;
+#X obj 602 188 samplerate~;
+#X obj 631 137 t b f;
+#X obj 649 233 /;
+#X obj 603 85 sel 0;
+#X obj 631 113 abs;
+#X obj 654 291 /;
+#X obj 665 336 t f f;
+#X msg 709 368 1 \$1;
+#X obj 716 394 -;
+#X obj 640 381 sig~ 0.0015;
+#X obj 717 440 sig~ 0.9985;
+#X obj 315 631 *~;
+#X obj 544 657 outlet~ progress;
+#X obj 378 178 t b b b;
+#X obj 94 107 t b b b;
+#X obj 72 211 f 0;
+#X obj 75 249 sig~ 0;
+#X obj 354 336 delay 5;
+#X obj 432 243 t b b b;
+#X msg 450 289 stop;
+#X obj 380 287 t b b;
+#X msg 480 387 0;
+#X msg 360 560 0;
+#X obj 254 414 t b b b;
+#X msg 345 416 0;
+#X msg 651 267 256 \$1;
+#X connect 0 0 35 0;
+#X connect 1 0 10 0;
+#X connect 2 0 11 1;
+#X connect 4 0 5 1;
+#X connect 5 0 3 0;
+#X connect 5 0 20 0;
+#X connect 5 0 33 0;
+#X connect 5 1 12 0;
+#X connect 5 2 12 0;
+#X connect 6 0 14 0;
+#X connect 7 0 14 0;
+#X connect 8 0 17 0;
+#X connect 9 0 37 0;
+#X connect 10 0 41 0;
+#X connect 10 1 34 0;
+#X connect 11 0 5 1;
+#X connect 12 0 44 0;
+#X connect 13 0 12 1;
+#X connect 14 0 5 2;
+#X connect 14 1 13 0;
+#X connect 15 0 24 0;
+#X connect 15 0 36 0;
+#X connect 16 0 32 0;
+#X connect 17 0 16 0;
+#X connect 20 0 32 1;
+#X connect 21 0 23 0;
+#X connect 22 0 21 0;
+#X connect 22 1 23 1;
+#X connect 23 0 46 0;
+#X connect 24 1 25 0;
+#X connect 25 0 22 0;
+#X connect 26 0 27 0;
+#X connect 27 0 30 0;
+#X connect 27 1 28 0;
+#X connect 28 0 29 0;
+#X connect 29 0 31 0;
+#X connect 30 0 20 1;
+#X connect 31 0 20 2;
+#X connect 32 0 18 0;
+#X connect 34 0 4 0;
+#X connect 34 1 6 0;
+#X connect 34 2 39 0;
+#X connect 35 0 11 0;
+#X connect 35 1 7 0;
+#X connect 35 2 39 0;
+#X connect 36 0 37 0;
+#X connect 37 0 5 0;
+#X connect 38 0 9 0;
+#X connect 39 0 36 0;
+#X connect 39 1 40 0;
+#X connect 39 2 8 0;
+#X connect 40 0 38 0;
+#X connect 41 0 38 0;
+#X connect 41 1 42 0;
+#X connect 42 0 17 0;
+#X connect 43 0 16 0;
+#X connect 44 0 19 0;
+#X connect 44 1 43 0;
+#X connect 44 2 45 0;
+#X connect 45 0 37 0;
+#X connect 46 0 26 0;
+#X restore 149 146 pd player;
+#X msg 361 290 set \$1;
+#X msg 426 295 set \$1;
+#X obj 96 489 outlet~ left;
+#X obj 258 492 outlet~ right;
+#X obj 89 11 inlet;
+#X obj 106 49 route bang float;
+#X obj 371 499 outlet~ progress;
+#X obj 497 498 outlet done;
+#X obj 263 -119 inlet pitch;
+#X obj 272 4 *;
+#X obj 566 24 inlet data;
+#X text 651 22 freq table-L table-R end start length;
+#X obj 562 85 unpack f s s f f f;
+#X obj 329 -27 t b f;
+#X obj 265 -67 f 1;
+#X obj 430 -117 inlet dur;
+#X obj 272 23 spigot 1;
+#X obj 430 -85 route bang;
+#X obj 427 -58 t b b;
+#X msg 452 -33 1;
+#X obj 491 -59 t f b;
+#X msg 523 -33 0;
+#X msg 485 0 1000 \$1;
+#X obj 485 21 /;
+#X obj 285 67 t f f;
+#X obj 267 -94 t f b;
+#X msg 324 -91 1;
+#X connect 0 0 5 0;
+#X connect 1 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 9 0;
+#X connect 4 0 10 0;
+#X connect 5 0 1 0;
+#X connect 5 0 2 0;
+#X connect 6 0 0 0;
+#X connect 6 1 3 1;
+#X connect 6 1 4 1;
+#X connect 6 2 13 0;
+#X connect 6 3 14 0;
+#X connect 7 0 1 0;
+#X connect 8 0 2 0;
+#X connect 11 0 12 0;
+#X connect 12 0 6 0;
+#X connect 12 1 6 1;
+#X connect 15 0 32 0;
+#X connect 16 0 23 0;
+#X connect 17 0 19 0;
+#X connect 19 0 20 0;
+#X connect 19 1 7 0;
+#X connect 19 2 8 0;
+#X connect 19 4 5 1;
+#X connect 19 5 0 1;
+#X connect 20 0 21 0;
+#X connect 20 1 16 1;
+#X connect 21 0 16 0;
+#X connect 21 0 6 2;
+#X connect 22 0 24 0;
+#X connect 23 0 6 3;
+#X connect 24 0 25 0;
+#X connect 24 1 27 0;
+#X connect 25 0 21 0;
+#X connect 25 1 26 0;
+#X connect 26 0 23 1;
+#X connect 27 0 29 0;
+#X connect 27 1 28 0;
+#X connect 28 0 23 1;
+#X connect 29 0 30 0;
+#X connect 30 0 31 0;
+#X connect 31 0 6 2;
+#X connect 31 1 6 3;
+#X connect 32 0 21 0;
+#X connect 32 1 33 0;
+#X connect 33 0 23 1;
+#X restore 74 383 pd voice;
+#X obj 430 580 zexy/multiplex~;
+#X obj 580 583 zexy/multiplex;
+#X obj 41 31 route bang float;
+#X obj 56 94 sel 0;
+#X msg 81 221 0;
+#X obj 77 187 s \$0voice;
+#X obj 75 166 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+1;
+#X obj 138 224 r \$0voice;
+#X obj 513 554 r \$0voice;
+#X obj 664 557 r \$0voice;
+#X obj 410 258 zexy/demultiplex;
+#X obj 502 235 r \$0voice;
+#X obj 504 60 loadbang;
+#X obj 504 92 tof/argument 1;
+#X msg 508 123 sample \$1;
+#X obj 42 136 t a b b b;
+#N canvas 86 54 893 581 sample_get_stereo 0;
+#N canvas 0 22 450 300 find_freq 0;
#X obj 83 241 outlet;
#N canvas 330 268 450 300 smpToFreq 0;
#X obj 41 35 inlet;
@@ -121,69 +258,280 @@
#X connect 5 0 4 0;
#X connect 6 0 1 0;
#X connect 7 0 3 0;
-#X restore 192 201 pd find_freq;
-#X obj 356 160 -;
-#X obj 277 72 sample_unpack;
-#X obj 231 252 zexy/demultiplex;
-#X obj 315 223 > 1;
-#X msg 210 277 list 0-\$1 0-\$1;
-#X msg 326 275 list 0-\$1 1-\$1;
-#X obj 218 5 inlet;
-#X obj 455 3 loadbang;
-#X obj 455 35 tof/argument 1;
-#X msg 459 66 sample \$1;
-#X connect 5 0 4 0;
-#X connect 6 0 5 1;
-#X connect 6 0 2 0;
+#X restore 144 253 pd find_freq;
+#X obj 386 180 -;
+#X obj 307 116 sample_unpack;
+#X obj 298 292 zexy/demultiplex;
+#X obj 352 254 > 1;
+#X obj 312 509 outlet data;
+#X text 308 533 freq table-L table-R end start length;
+#X obj 308 468 pack f s s f f f;
+#X msg 301 357 symbol 0-\$1;
+#X msg 557 347 symbol 1-\$1;
+#X msg 399 353 symbol 0-\$1;
+#X obj 357 10 inlet sample;
+#X obj 129 19 inlet get;
+#X connect 0 0 7 0;
+#X connect 1 0 0 1;
+#X connect 1 0 7 5;
+#X connect 2 0 0 0;
+#X connect 2 2 3 0;
+#X connect 2 3 4 0;
+#X connect 2 4 1 0;
+#X connect 2 4 7 3;
+#X connect 2 5 1 1;
+#X connect 2 5 7 4;
+#X connect 3 0 8 0;
+#X connect 3 0 10 0;
+#X connect 3 1 9 0;
+#X connect 3 1 8 0;
+#X connect 4 0 3 1;
#X connect 7 0 5 0;
+#X connect 8 0 7 1;
+#X connect 9 0 7 2;
+#X connect 10 0 7 2;
+#X connect 11 0 2 1;
+#X connect 12 0 2 0;
+#X restore 408 213 pd sample_get_stereo;
+#X obj 453 -18 inlet duration;
+#N canvas 410 272 871 601 voice 0;
+#X obj 123 203 *~ 0;
+#X obj 106 373 tabread4~;
+#X obj 274 383 tabread4~;
+#X obj 101 434 *~;
+#X obj 221 425 *~;
+#X obj 124 258 +~ 0;
+#N canvas 326 193 914 687 player 0;
+#X obj 91 29 inlet bang;
+#X obj 253 38 inlet float;
+#X obj 388 34 inlet pitch;
+#X obj 87 655 outlet~ phase;
+#X msg 172 265 0;
+#X obj 80 318 tof/phasorshot~;
+#X msg 310 229 1;
+#X msg 267 232 0;
+#X msg 528 383 1;
+#X msg 358 362 0;
+#X obj 350 144 sel 0;
+#N canvas 0 22 450 300 start_phase 0;
+#X obj 76 249 outlet;
+#X obj 244 26 inlet speed;
+#X obj 68 28 inlet bang;
+#X obj 74 145 < 0;
+#X obj 76 115 f 1;
+#X connect 1 0 4 1;
+#X connect 2 0 4 0;
+#X connect 3 0 0 0;
+#X connect 4 0 3 0;
+#X restore 132 200 pd start_phase;
+#X obj 236 380 spigot;
+#X obj 283 310 == 0;
+#X obj 254 266 t f f;
+#X obj 561 38 inlet speed;
+#X obj 294 587 line~;
+#X msg 295 561 \$1 5;
+#X obj 315 662 outlet~ volume;
+#X obj 667 661 outlet done;
+#X obj 363 600 cyclone/trapezoid~;
+#X obj 602 188 samplerate~;
+#X obj 631 137 t b f;
+#X obj 649 233 /;
+#X obj 603 85 sel 0;
+#X obj 631 113 abs;
+#X obj 654 291 /;
+#X obj 665 336 t f f;
+#X msg 709 368 1 \$1;
+#X obj 716 394 -;
+#X obj 640 381 sig~ 0.0015;
+#X obj 717 440 sig~ 0.9985;
+#X obj 315 631 *~;
+#X obj 544 657 outlet~ progress;
+#X obj 378 178 t b b b;
+#X obj 94 107 t b b b;
+#X obj 72 211 f 0;
+#X obj 75 249 sig~ 0;
+#X obj 354 336 delay 5;
+#X obj 432 243 t b b b;
+#X msg 450 289 stop;
+#X obj 380 287 t b b;
+#X msg 480 387 0;
+#X msg 360 560 0;
+#X obj 254 414 t b b b;
+#X msg 345 416 0;
+#X msg 675 85 1.21314;
+#X msg 651 267 256 \$1;
+#X connect 0 0 35 0;
+#X connect 1 0 10 0;
+#X connect 2 0 11 1;
+#X connect 4 0 5 1;
+#X connect 5 0 3 0;
+#X connect 5 0 20 0;
+#X connect 5 0 33 0;
+#X connect 5 1 12 0;
+#X connect 5 2 12 0;
+#X connect 6 0 14 0;
+#X connect 7 0 14 0;
+#X connect 8 0 17 0;
+#X connect 9 0 37 0;
+#X connect 10 0 41 0;
+#X connect 10 1 34 0;
+#X connect 11 0 5 1;
+#X connect 12 0 44 0;
+#X connect 13 0 12 1;
+#X connect 14 0 5 2;
+#X connect 14 1 13 0;
+#X connect 15 0 24 0;
+#X connect 15 0 36 0;
+#X connect 16 0 32 0;
+#X connect 17 0 16 0;
+#X connect 20 0 32 1;
+#X connect 21 0 23 0;
+#X connect 22 0 21 0;
+#X connect 22 1 23 1;
+#X connect 23 0 47 0;
+#X connect 24 1 25 0;
+#X connect 25 0 22 0;
+#X connect 26 0 27 0;
+#X connect 27 0 30 0;
+#X connect 27 1 28 0;
+#X connect 28 0 29 0;
+#X connect 29 0 31 0;
+#X connect 30 0 20 1;
+#X connect 31 0 20 2;
+#X connect 32 0 18 0;
+#X connect 34 0 4 0;
+#X connect 34 1 6 0;
+#X connect 34 2 39 0;
+#X connect 35 0 11 0;
+#X connect 35 1 7 0;
+#X connect 35 2 39 0;
+#X connect 36 0 37 0;
+#X connect 37 0 5 0;
+#X connect 38 0 9 0;
+#X connect 39 0 36 0;
+#X connect 39 1 40 0;
+#X connect 39 2 8 0;
+#X connect 40 0 38 0;
+#X connect 41 0 38 0;
+#X connect 41 1 42 0;
+#X connect 42 0 17 0;
+#X connect 43 0 16 0;
+#X connect 44 0 19 0;
+#X connect 44 1 43 0;
+#X connect 44 2 45 0;
+#X connect 45 0 37 0;
+#X connect 46 0 25 0;
+#X connect 47 0 26 0;
+#X restore 149 146 pd player;
+#X msg 361 290 set \$1;
+#X msg 426 295 set \$1;
+#X obj 96 489 outlet~ left;
+#X obj 258 492 outlet~ right;
+#X obj 89 11 inlet;
+#X obj 106 49 route bang float;
+#X obj 371 499 outlet~ progress;
+#X obj 497 498 outlet done;
+#X obj 263 -119 inlet pitch;
+#X obj 272 4 *;
+#X obj 566 24 inlet data;
+#X text 651 22 freq table-L table-R end start length;
+#X obj 562 85 unpack f s s f f f;
+#X obj 329 -27 t b f;
+#X obj 265 -67 f 1;
+#X obj 430 -117 inlet dur;
+#X obj 272 23 spigot 1;
+#X obj 430 -85 route bang;
+#X obj 427 -58 t b b;
+#X msg 452 -33 1;
+#X obj 491 -59 t f b;
+#X msg 523 -33 0;
+#X msg 485 0 1000 \$1;
+#X obj 485 21 /;
+#X obj 285 67 t f f;
+#X obj 267 -94 t f b;
+#X msg 324 -91 1;
+#X connect 0 0 5 0;
+#X connect 1 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 9 0;
+#X connect 4 0 10 0;
+#X connect 5 0 1 0;
+#X connect 5 0 2 0;
+#X connect 6 0 0 0;
+#X connect 6 1 3 1;
+#X connect 6 1 4 1;
+#X connect 6 2 13 0;
+#X connect 6 3 14 0;
+#X connect 7 0 1 0;
+#X connect 8 0 2 0;
+#X connect 11 0 12 0;
+#X connect 12 0 6 0;
+#X connect 12 1 6 1;
+#X connect 15 0 32 0;
+#X connect 16 0 23 0;
+#X connect 17 0 19 0;
+#X connect 19 0 20 0;
+#X connect 19 1 7 0;
+#X connect 19 2 8 0;
+#X connect 19 4 5 1;
+#X connect 19 5 0 1;
+#X connect 20 0 21 0;
+#X connect 20 1 16 1;
+#X connect 21 0 16 0;
+#X connect 21 0 6 2;
+#X connect 22 0 24 0;
+#X connect 23 0 6 3;
+#X connect 24 0 25 0;
+#X connect 24 1 27 0;
+#X connect 25 0 21 0;
+#X connect 25 1 26 0;
+#X connect 26 0 23 1;
+#X connect 27 0 29 0;
+#X connect 27 1 28 0;
+#X connect 28 0 23 1;
+#X connect 29 0 30 0;
+#X connect 30 0 31 0;
+#X connect 31 0 6 2;
+#X connect 31 1 6 3;
+#X connect 32 0 21 0;
+#X connect 32 1 33 0;
+#X connect 33 0 23 1;
+#X restore 385 401 pd voice;
+#X connect 0 0 10 0;
+#X connect 1 0 7 1;
+#X connect 1 0 26 1;
+#X connect 6 0 7 0;
+#X connect 6 1 26 0;
+#X connect 7 0 2 0;
+#X connect 7 1 3 0;
#X connect 7 2 8 0;
#X connect 7 3 9 0;
-#X connect 7 4 6 0;
-#X connect 7 4 0 0;
-#X connect 7 5 6 1;
-#X connect 7 5 1 0;
-#X connect 8 0 10 0;
-#X connect 8 1 11 0;
-#X connect 9 0 8 1;
-#X connect 10 0 3 0;
-#X connect 11 0 3 0;
-#X connect 12 0 7 0;
-#X connect 13 0 14 0;
-#X connect 14 0 15 0;
-#X connect 15 0 7 0;
-#X restore 309 212 pd parse_sample;
-#X obj 163 199 *;
-#X obj 311 390 unpack s s;
-#X msg 306 419 set \$1;
-#X msg 371 424 set \$1;
-#X obj 167 143 f 1;
-#X obj 190 167 t b f;
-#X connect 0 0 9 0;
-#X connect 1 0 8 0;
-#X connect 3 0 6 0;
-#X connect 5 0 7 0;
-#X connect 6 0 2 0;
-#X connect 7 0 4 0;
-#X connect 8 0 3 0;
-#X connect 8 0 5 0;
-#X connect 9 0 11 0;
-#X connect 9 1 11 1;
-#X connect 9 2 12 0;
-#X connect 10 0 11 2;
-#X connect 10 0 17 0;
-#X connect 11 0 1 0;
-#X connect 11 1 6 1;
-#X connect 11 1 7 1;
-#X connect 11 2 12 0;
-#X connect 12 0 18 0;
-#X connect 12 1 14 0;
-#X connect 12 3 8 1;
-#X connect 12 4 1 1;
-#X connect 13 0 11 3;
-#X connect 14 0 15 0;
-#X connect 14 1 16 0;
-#X connect 15 0 3 0;
-#X connect 16 0 5 0;
-#X connect 17 0 13 0;
-#X connect 18 0 17 0;
-#X connect 18 1 13 1;
+#X connect 8 0 4 0;
+#X connect 9 0 5 0;
+#X connect 10 0 23 0;
+#X connect 10 1 11 0;
+#X connect 10 2 24 1;
+#X connect 11 0 12 0;
+#X connect 11 1 23 0;
+#X connect 12 0 6 0;
+#X connect 14 0 13 0;
+#X connect 15 0 6 1;
+#X connect 16 0 8 0;
+#X connect 17 0 9 2;
+#X connect 18 0 7 3;
+#X connect 18 1 26 3;
+#X connect 19 0 18 1;
+#X connect 20 0 21 0;
+#X connect 21 0 22 0;
+#X connect 22 0 24 1;
+#X connect 23 0 6 0;
+#X connect 23 1 24 0;
+#X connect 23 2 14 0;
+#X connect 23 3 12 0;
+#X connect 24 0 18 0;
+#X connect 25 0 7 2;
+#X connect 25 0 26 2;
+#X connect 26 0 2 0;
+#X connect 26 1 3 0;
+#X connect 26 2 8 1;
+#X connect 26 3 9 1;